8
votes

PDO - Obtenez l'identifiant actuel inséré

$query = "INSERT INTO news VALUES (NULL, :param1 , :param2  )";
$stmt = $pdo->prepare($query);

$params = array(
    "param1" => $p['title'],
    "param2" => $p['body'],
);

$data = $stmt->execute($params);

// here i would like get current inserted ID. Is possible?

$id = $data->id ???? ;
How can i make this?

3 Réponses :


2
votes

Vous pouvez utiliser PDO :: LastIserTID

$last_insert_id = $pdo->lastInsertId();


0 commentaires

21
votes
$last_id = $pdo->lastInsertId();

1 commentaires

Le dernier identifiant d'insertion semble impliquer une condition de race possible. S'il y a deux déclarations de PDO qui se produisent en même temps, il est possible que le lastSertaid puisse renvoyer l'identifiant de l'autre instruction insertion?



4
votes

Utilisation:

$last_insert_id = $pdo->lastInsertId();


0 commentaires