Foros del Web » Programando para Internet » PHP »

Obtener id del insert que se esta ejecutando.

Estas en el tema de Obtener id del insert que se esta ejecutando. en el foro de PHP en Foros del Web. como se obtendra el id que se va a insertar apenas? muchos dicen que se inserta y luego se selecciona el numero mayor, pero que ...
  #1 (permalink)  
Antiguo 26/05/2013, 17:49
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 2.031
Antigüedad: 11 años, 8 meses
Puntos: 52
Obtener id del insert que se esta ejecutando.

como se obtendra el id que se va a insertar apenas?

muchos dicen que se inserta y luego se selecciona el numero mayor,
pero que ocurre cuando son 7 millones de usuarios insertando al mismo tiempo, que numero mayor me regresara?

se me ocurre la opcion de obtener el maximo ide del usuario logeado que lo inserto, pero se vuelve nada cuando en mi pagina tambien pueden comentar usuarios no logeados.

¿entonces como hacer esto, se les ocurre algo?

de antemano gracias..!
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #2 (permalink)  
Antiguo 26/05/2013, 23:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Obtener id del insert que se esta ejecutando.

Si tu motor de base de datos es mysql, entonces puedes usar insert_id, pero depende de la librería que estás usando, por ejemplo, para la obsoleta mysql, tienes mysql_insert_id()

Por cierto, en esa misma página están los enlaces para ver cómo se hace con mysqli y PDO.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 27/05/2013, 00:27
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 13 años, 10 meses
Puntos: 55
Respuesta: Obtener id del insert que se esta ejecutando.

al comentario le agregas un codigo unico, lo guardas en una session y luego seleccionas el id del comentario que tenga ese codigo, es algo rebuscado y no es lo mas profesional, pero igual funciona
  #4 (permalink)  
Antiguo 27/05/2013, 09:04
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 2.031
Antigüedad: 11 años, 8 meses
Puntos: 52
Respuesta: Obtener id del insert que se esta ejecutando.

Cita:
Iniciado por Triby Ver Mensaje
Si tu motor de base de datos es mysql, entonces puedes usar insert_id, pero depende de la librería que estás usando, por ejemplo, para la obsoleta mysql, tienes mysql_insert_id()

Por cierto, en esa misma página están los enlaces para ver cómo se hace con mysqli y PDO.
Bueno me salieron dudas al leer estas notas

Nota1:

Como mysql_insert_id() actúa en la última consulta realizada, asegúrese de llamar a mysql_insert_id() inmediatamente después de la consulta que genera el valor.

Nota2:

El valor de la función de SQL LAST_INSERT_ID() de MySQL siempre contiene el valor AUTO_INCREMENT generado más recientientemente, y no se restablece entre consultas.

la Nota1 dice que me asegure que lo haga inmediatamente lo que me da a entender que es para que no haya otras persona que haya hecho el insert en otra maquina antes de recogerlo.

El de la Nota2. parece que hace lo mismo.

pero los probare tratare una manera de simular esto con temporizaciones de 10 segundos tras cada consulta en 4 cuentas de usuarios diferentes al mismo tiempo.
se supone que eso no debe influir en obtener el id de la consulta llevada acabo.
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #5 (permalink)  
Antiguo 27/05/2013, 09:05
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 2.031
Antigüedad: 11 años, 8 meses
Puntos: 52
Respuesta: Obtener id del insert que se esta ejecutando.

Cita:
Iniciado por waldragon Ver Mensaje
al comentario le agregas un codigo unico, lo guardas en una session y luego seleccionas el id del comentario que tenga ese codigo, es algo rebuscado y no es lo mas profesional, pero igual funciona
No entendi muy bien disculpa.
¿ese código único como lo obtengo?
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra

Etiquetas: insert, usuarios
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 01:04.