mysql_insert_id

(PHP 3, PHP 4 , PHP 5)

mysql_insert_id --  Visszaadja az előző INSERT művelet által előállított azonosítót

Leírás

int mysql_insert_id ( [resource link_identifier] )

A mysql_insert_id() függvény az előző INSERT műveletben szereplő AUTO_INCREMENT tulajdonságú mező értékét adja vissza. Ha megadjuk link_identifier-t az adott linkkel rendelekező, ha nem adunk meg paramétert, az utolsó megnyitott linkhez tartozó eredményt szolgáltatja.

A mysql_insert_id() függvény 0-val tér vissza, ha az előző kérésben nem jött létre AUTO_INCREMENT érték. Ha szükséged van később az értékre, hívd meg a mysql_insert_id() függvényt rögtön az értéket generáló lekérdezés után!

Megjegyzés: A LAST_INSERT_ID() függvény értéke mindig az utoljára előállított AUTO_INCREMENT értéket tartalmazza, nem törlődik az értéke lekérdezések között.

Figyelem

A mysql_insert_id() függvény a MySQL C API függvény mysql_insert_id() visszatérési értékét long-gá (PHP-ban ez az int) konvertálja. Ha az AUTO_INCREMENT meződ mondjuk BIGINT típusú, akkor a mysql_insert_id() függvény rossz eredményt adhat vissza. Ezért inkább az SQL-be beépített LAST_INSERT_ID() MySQL függvényt használd!

Példa 1. mysql_insert_id() example

<?php
$kapcsolat
= mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!
$kapcsolat) {
    die(
'Nem tudok kapcsolódni: ' . mysql_error());
}
mysql_select_db('adatbazis');

mysql_query("INSERT INTO tabla (termek) values ('kossu')");
printf("Az utoljára beszúrt sor a %d azonosítót kapta.\n", mysql_insert_id());
?>

Lásd még a mysql_query() és mysql_info() függvényeket.