PHP mysqli insert_id() Function
Example - Object Oriented style
Assume that the "Persons" table has an auto-generated id field. Return the id from the last query:
<?php
$mysqli = new mysqli("localhost","my_user","my_password","my_db");
if ($mysqli -> connect_errno) {
echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
exit();
}
$mysqli -> query("INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire', 33)");
// Print auto-generated id
echo
"New record has id: " . $mysqli -> insert_id;
$mysqli -> close();
?>
Look at example of procedural style at the bottom.
Definition and Usage
The mysqli_insert_id() function returns the id (generated with AUTO_INCREMENT) from the last query.
Syntax
Object oriented style:
$mysqli ->
insert_id
Procedural style:
mysqli_insert_id(connection)
Parameter Values
Parameter | Description |
---|---|
connection | Required. Specifies the MySQL connection to use |
Technical Details
Return Value: | An integer that represents the value of the AUTO_INCREMENT field updated by the last query. Returns zero if there were no update or no AUTO_INCREMENT field |
---|---|
PHP Version: | 5+ |
Example - Procedural style
Assume that the "Persons" table has an auto-generated id field. Return the id from the last query:
<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
exit();
}
mysqli_query($con, "INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire', 33)");
// Print auto-generated id
echo "New record has id: " . mysqli_insert_id($con);
mysqli_close($con);
?>
❮ PHP MySQLi Reference