Foros del Web » Programando para Internet » PHP »

registro introducido

Estas en el tema de registro introducido en el foro de PHP en Foros del Web. Hola a todos: Al insertar un registro en una tabla de una base de datos necesito conocer su clave primaria para realizar algunas taeas extras. ...
  #1 (permalink)  
Antiguo 18/09/2003, 05:45
 
Fecha de Ingreso: julio-2003
Mensajes: 132
Antigüedad: 14 años, 4 meses
Puntos: 0
registro introducido

Hola a todos:
Al insertar un registro en una tabla de una base de datos necesito conocer su clave primaria para realizar algunas taeas extras. Lanzo la Query y me devuelve un 1, pero ¿como puedo acceder a la infformación insertada?
¿Me tengo que montar yo la idea, con timestamp o similar?
Espero sus comentarios, y gracias de antemano.
  #2 (permalink)  
Antiguo 18/09/2003, 06:43
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Si tu clave primaria es un autoincrement, puedes usar la funcion mysql_insert_id() (www.php.net/mysql_insert_id) para recuperar el autoincrement del ultimo insert.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 18/09/2003, 06:45
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 14 años, 7 meses
Puntos: 2
pon el code para insertar en la tabla, y luego el code de la Base de Datos, supongo que sera mysql, quiero ver la estructura que has construido....
__________________
3w.valenciadjs.com
3w.laislatv.com
  #4 (permalink)  
Antiguo 18/09/2003, 12:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Si deseas obtener el último ID (autoincremental) producido por ese tipo de campos de llave primaria .. puedes usar SQL también .. y recomendable (ya puestos) usar "transacciones" en ese proceso bloqueando la tabla por ese instante para asegurarte 100% que ese ID es el que esperas ..

Me refiero a ..
LAST_INSERT_ID de Msyql

sería algo así ...
Código PHP:
$sql="SELECT LAST_INSERT_ID() as ultimo_id FROM tabla"
en ultimo_id tendrías ese número único último generado ..

Y lo puedes acceder simplemente con:
Código PHP:
$consulta=mysql_query($sql) or die (mysql_error());
$ultimo_id=mysql_result($consulta,'ultimo_id'); 
Si quieres usar "transacciones" .. revisa este capítulo del manual de Mysql:

http://www.mysql.com/doc/en/COMMIT.html
http://www.mysql.com/doc/en/ANSI_diff_Transactions.html


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 19:00.