Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

mysql_insert_id

MySQL-Funktionen

    Befehl:
int mysql_insert_id ([ resource $Verbindungs-Kennung ] )


    Parameter-Liste:
NameBeschreibung
link_identifierDie MySQL-Verbindung. Wird die Verbindungskennung nicht angegeben, wird die letzte durch mysql_connect() geöffnete Verbindung angenommen. Falls keine solche Verbindung gefunden wird, wird versucht, eine Verbindung aufzubauen, wie es beim Aufruf von mysql_connect() ohne Angabe von Argumenten der Fall wäre. Falls zufällig keine Verbindung gefunden oder aufgebaut werden kann, wird eine Warnung der Stufe E_WARNING erzeugt.

    Rückgabewerte:
Die ID, die für eine AUTO_INCREMENT Spalte durch die vorherige Abfrage bei Erfolg, 0 falls die vorherige Abfrage keinen AUTO_INCREMENT Wert erzeugt hatte oder FALSE falls keine MySQL verbindung existierte.

    Beschreibung:
Liefert die ID, die für eine AUTO_INCREMENT Spalte durch die vorherige Abfrage (meist INSERT) erzeugt wurde.


    Aktiv in Version:
(PHP 4, PHP 5, PHP 7)

    Hinweis:
Hinweis:

Da mysql_insert_id() mit der zuletzt ausgeführten Abfrage arbeite, stellen sie sicher, dass sie mysql_insert_id() direkt nach der Abfrage, die den Wert erzeugt aufrufen.

Der Wert der MySQL SQL Funktion LAST_INSERT_ID() liefert immer den zuletzt erzeugten AUTO_INCREMENT Wert. Dieser wird zwischen Abfragen nicht zurückgesetzt.


    Achtung:
Achtung:

mysql_insert_id() konvertiert den Typ der Rückgabe der nativen MySQL C API Funktion mysql_insert_id() in den Typ long (als int in PHP bezeichnet).Falls Ihre AUTO_INCREMENT Spalte vom Typ BIGINT (64 Bit) ist, ist der Wert denmysql_insert_id() liefert, nicht korrekt. Verwenden Sie in diesem Fall stattdessen die MySQL interne SQL Funktion LAST_INSERT_ID() in einer SQL-Abfrage. Für weitergehende Informationen bezüglich PHPs maximaler Integer Werte, lesen sie bitte integer Dokumenation.


    Warnung:
Warnung:

Diese Erweiterung ist ab PHP 5.5.0 veraltet und wird in der Zukunft entfernt werden. Stattdessen wird der MySQLi oder PDO_MYSQL Verlängerung verwendet werden. Siehe auch MySQL: Auswahl einer API Führung und bezogenen FAQ für weitere Informationen. Alternativen zu dieser Funktion sind:

    Siehe auch:
Sendet eine Anfrage an MySQL
 
Liefert Informationen über die zuletzt ausgeführte Anfrage zurück
 

mysql_insert_id() - Beispiel:


Eingabe:
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Keine Verbindung möglich: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Letzer eingefügter Datensatz hat id %d\n", mysql_insert_id());
?>




MySQL-Funktionen