(PHP 5)
mysqli_insert_id, mysqli->insert_id — Retourne l'identifiant automatiquement généré par la dernière requête
Style procédural
int mysqli_insert_id ( mysqli $link )Style orienté objet (méthode)
class mysqli {La fonction mysqli_insert_id() retourne l'identifiant généré par une requête sur une table avec une colonne possédant l'attribut AUTO_INCREMENT. Si la dernière requête n'était ni un INSERT, ni un UPDATE ou que la table modifiée ne possède pas de colonne avec l'attribut AUTO_INCREMENT, cette fonction retournera zéro.
Note: Exécuter une commande INSERT ou UPDATE utilisant la fonction LAST_INSERT_ID() modifiera aussi la valeur retournée par la fonction mysqli_insert_id() .
Style procédural uniquement : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()
La valeur du champ AUTO_INCREMENT modifiée par la dernière requête. Retourne zéro s'il n'y a pas eu de requête sur la connexion ou si la dernière requête n'a pas modifié la valeur de l'AUTO_INCREMENT .
Note: Si le nombre est plus grand que la valeur maximale d'un entier, mysqli_insert_id() retournera une chaîne le représentant.
Exemple 1675. Style orienté objet
<?php
$mysqli
= new
mysqli
(
"localhost"
,
"my_user"
,
"my_password"
,
"world"
);
/* Vérification de la connexion */
if (
mysqli_connect_errno
()) {
printf
(
"Échec de la connexion : %s\n"
,
mysqli_connect_error
());
exit();
}
$mysqli
->
query
(
"CREATE TABLE myCity LIKE City"
);
$query
=
"INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)"
;
$mysqli
->
query
(
$query
);
printf
(
"Le nouvel enregistrement a l'id : %d.\n"
,
$mysqli
->
insert_id
);
/* Suppression de la table myCity */
$mysqli
->
query
(
"DROP TABLE myCity"
);
/* Fermeture de la connexion */
$mysqli
->
close
();
?>
Exemple 1676. Style procédural
<?php
$link
=
mysqli_connect
(
"localhost"
,
"my_user"
,
"my_password"
,
"world"
);
/* Vérification de la connexion */
if (
mysqli_connect_errno
()) {
printf
(
"Échec de la connexion : %s\n"
,
mysqli_connect_error
());
exit();
}
mysqli_query
(
$link
,
"CREATE TABLE myCity LIKE City"
);
$query
=
"INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)"
;
mysqli_query
(
$link
,
$query
);
printf
(
"Le nouvel enregistrement a l'id : %d.\n"
,
mysqli_insert_id
(
$link
));
/* Suppression de la table myCity */
mysqli_query
(
$link
,
"DROP TABLE myCity"
);
/* Fermeture de la connexion */
mysqli_close
(
$link
);
?>
L'exemple ci-dessus va afficher :
Le nouvel enregistrement a l'id : 1.