Foros del Web » Programando para Internet » PHP »

Como averigüo la próxima id

Estas en el tema de Como averigüo la próxima id en el foro de PHP en Foros del Web. Estoy haciendo una galería de fotos que será administrada por el cliente. Para ello hice que los nombres de las fotos coincidan con el número ...
  #1 (permalink)  
Antiguo 21/05/2009, 03:55
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Como averigüo la próxima id

Estoy haciendo una galería de fotos que será administrada por el cliente.

Para ello hice que los nombres de las fotos coincidan con el número de id a los efectos que el usuario no suba dos fotos con el mismo nombre.

El tema es que al subir una foto, tomo el valor de la última id y le sumo 1, pro si el último registro fue borrado me genera problemas ya que no coincidirán los valores.

Sería bueno que pudiera saber apriori el próximo id sin tener que hacer el cálculo.

Gracias
__________________
Todo se ve mejor si le miramos el lado positivo.
  #2 (permalink)  
Antiguo 21/05/2009, 04:02
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Como averigüo la próxima id

con una query

SELECT TOP 1 id FROM tabla ORDER BY id desc

espero que te sirva
  #3 (permalink)  
Antiguo 21/05/2009, 04:39
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Como averigüo la próxima id

¡Vaya, velocidad de respuesta!

Pero me queda una duda:

TOP 1 id, debo asumir que es así o representa algo en la base de datos.

Es decir como tabla quiere decir el nombre de la tabla.

gracias nuevamente.
__________________
Todo se ve mejor si le miramos el lado positivo.
  #4 (permalink)  
Antiguo 21/05/2009, 04:45
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Como averigüo la próxima id

pues TOP 1 cogera solo la primera fila que encuentre y como hemos puesto un ORDER BY "id" DESC pues cogera la ultima..

el "id" representa el nombre de la columna donde tienes los id

y tabla es el nombre de la tabla
  #5 (permalink)  
Antiguo 21/05/2009, 05:08
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Como averigüo la próxima id

Ok,

La consulta queda así:

SELECT TOP1 `prd_id` FROM `productos` ORDER BY `prd_id` DESC LIMIT 0 , 30

pero me da este error

MySQL ha dicho: Documentación
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1 `prd_id` FROM productos ORDER BY `prd_id` desc
LIMIT 0, 30' at line 1
__________________
Todo se ve mejor si le miramos el lado positivo.
  #6 (permalink)  
Antiguo 21/05/2009, 05:15
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Como averigüo la próxima id

quita el LIMIT 0,30 y pon un espacio entre TOP y 1
  #7 (permalink)  
Antiguo 21/05/2009, 05:20
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Como averigüo la próxima id

Estoy haciendo la prueba en phpMyadmin.

Lo que me pedís que haga me lo pone automático.
Incluso le saca el espacio entre top y 1.

Creo que voy a probar desde php, pero ahora no puedo, lo haré más tarde.
Y si no, buscaré en los manuales, al menos ahora ya se cual es la consulta.

Muchas gracias por todo
__________________
Todo se ve mejor si le miramos el lado positivo.
  #8 (permalink)  
Antiguo 21/05/2009, 05:26
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Como averigüo la próxima id

el phpMyAdmin pone eso para limitar la busqueda a las 30 primeras lineas....

pruebalo en el php y luego me dices que tal
espero que te sirva
  #9 (permalink)  
Antiguo 21/05/2009, 09:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Como averigüo la próxima id

Si es con MySQL puedes usar esta consulta:
Código sql:
Ver original
  1. SELECT LAST_INSERT_ID() + 1

Saludos.
  #10 (permalink)  
Antiguo 04/06/2009, 03:27
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Como averigüo la próxima id

Discuplen, pero no lo logrué con las consultas que me dieron.

Lo solucioné con otra función y un tratamiento un tanto artesanal.

Primero generé la consulta como iría sin llenar los datos del nombre de la imagen.
Luego, usando la función mysql_insert_id() obtengo la última id generada (es el dato que quería)

Por último un update para colocar el nombre de la imagen donde corresponde.
Y subo la imagen con el nombre que debe.

Ingenioso verdad? (si ya se, poco práctico)

Pero gracias a uds. ya que buscando info de lo que me dieron, encontré esta otra función.
__________________
Todo se ve mejor si le miramos el lado positivo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:16.