(PHP 4, PHP 5, PECL mysql:1.0)
mysql_insert_id — Devuelve el identificador generado en la última llamada a INSERT
mysql_insert_id() devuelve el identificador generado para un campo de tipo AUTO_INCREMENTED. Se devolverá el identificador generado por el último INSERT para el identificador_de_enlace . Si no se específica el identificador_de_enlace , se asume por defecto el último enlace abierto.
mysql_insert_id() regresa 0 si la consulta previa no generó un valor AUTO_INCREMENT. Si necesita guardar el valor para un uso posterior, asegurese de llamar mysql_insert_id() inmediatamente después de la consulta que generó el valor.
Note: El valor de la función SQL de MYSQL LAST_INSERT_ID() siempre contiene el valor AUTO_INCREMENT má recientemente generado, y no se pierde su valor entre consultas.
mysql_insert_id() convierte el tipo de la función nativa de MySQL en el API de C mysql_insert_id() a un tipo de long (llamada int en PHP). Si tu columna AUTO_INCREMENT tiene un tipo BIGINT, el valor regresado por mysql_insert_id() será incorrecto. En ese caso, usa la función interna LAST_INSERT_ID() de SQL en MySQL en una consulta SQL.
Example#1 Ejemplo mysql_insert_id
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>
Vea también mysql_query(), mysql_info().