PHP MySQL Obțineți ultimul ID introdus. Exemplu (MySQLi Orientat pe obiect).

PHP MySQL Obțineți ultimul ID introdus

Obțineți ID-ul ultimei înregistrări introduse

Dacă efectuăm un INSERT sau UPDATE pe o tabelă cu câmpul AUTO_INCREMENT, putem obține imediat ID-ul ultimei înregistrări introduse/actualizate (inserted/updated).

În tabelul „MyGuests”, coloana „id” este un câmp AUTO_INCREMENT:
 
CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)

Următoarele exemple sunt egale cu exemplele din pagina anterioară (PHP Insert Data In MySQL), cu excepția faptului că am adăugat o singură linie de cod pentru a prelua ID-ul ultimei înregistrări introduse. De asemenea, afisam cu echo ultimul ID introdus:

Exemplu (MySQLi Orientat pe obiect/MySQLi Object-oriented)
 
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Creați conexiunea
$conn = new mysqli($servername, $username, $password, $dbname);
// Verificați conexiunea
if ($conn->connect_error) {
    die("Conexiunea a eșuat: " . $conn->connect_error);
}

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Ion', 'Popescu', '[email protected]')";

if ($conn->query($sql) === TRUE) {
    $last_id = $conn->insert_id;
    echo "Noua înregistrare creată cu succes. Ultimul ID inserat este: " . $last_id;
} else {
    echo "Eroare: " . $sql . "<br>" . $conn->error;
}

$conn->close();
?>