Manuel PHP
Précédent |  | Suivant

# mysql_insert_id

(PHP 3, PHP 4 , PHP 5)

mysql_insert_id -- Retourne l'identifiant généré par la dernière requête INSERT MySQL

## Description

int mysql_insert_id ( [resource link_identifier])

mysql_insert_id() retourne le dernier identifiant généré par un champ de type AUTO_INCREMENT, sur la connexion MySQL courante, ou bien sûr la connexion spécifiée par link_identifier. Si link_identifier est omis, la dernière connexion ouverte est utilisée.

mysql_insert_id() retourne 0 si la dernière requête SQL n'a pas généré de valeur AUTO_INCREMENT. Si vous devez lire cette valeur pour la conserver et l'utiliser ultérieurement, appelez la fonction mysql_insert_id() juste après l'exécution de la requête, pour obtenir cette valeur non parasitée.

> Note : La fonction MySQL LAST_INSERT_ID() contient toujours la valeur AUTO_INCREMENT la plus récente, et n'est pas remis à zéro entre deux requêtes.

Avertissement
mysql_insert_id() convertit le type de valeur retourné par la fonction C de MySQL C mysql_insert_id() en type PHP long (appelé int en PHP). Si votre colonne de type AUTO_INCREMENT est une colonne de type BIGINT, la valeur retournée par mysql_insert_id() sera incorrecte. A la place, utilisez la fonction interne MySQL LAST_INSERT_ID() dans une requête SQL.

Exemple 1. Exemple avec mysql_insert_id()

`<?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Impossible de se connecter : " . mysql_error()); mysql_select_db("mydb"); mysql_query("INSERT INTO mytable (product) values ('kossu')"); printf ("Le dernier ID inséré dans est le %d\n", mysql_insert_id()); ?>`

Voir aussi mysql_query() et mysql_info().

Précédent | Sommaire | Suivant
mysql_info | Niveau supérieur | mysql_list_dbs