Como retornar o id gerado apos um insert com PDO
12/09/2016
0
$sql = "insert into participantes (nome, cpf) values(:nome, :cpf)"; $stmt = $this->db->prepare($sql); $stmt->bindParam(":nome", $nome, PDO::PARAM_STR); $stmt->bindParam(":cpf", $cpf, PDO::PARAM_STR); $stmt->execute();
Samuel Lopes
Post mais votado
13/09/2016
Você pode usar $this->db->lastInsertId() depois do execute, se a versão do PHP for maior que 5.1.
Estevão Dias
Mais Posts
14/09/2016
Raphael Sobreira
14/09/2016
José Tomaz
Neste artigo do DevMedia o Rafael Silva explica como funciona.
https://www.devmedia.com.br/funcao-mysql-insert-id-recuperando-id-do-mysql-no-php/22243
Espero ter ajudado
14/09/2016
Samuel Lopes
E está função não da para usar com pdo, ou da?
02/05/2019
Samuel Lima
Você pode usar $this->db->lastInsertId() depois do execute, se a versão do PHP for maior que 5.1.
Estou com o mesmo problema e retornando o erro quando vou mandar a mensagem de sucesso!
$result_events = $pdo->prepare("INSERT INTO events (title, color, start, end) VALUES(?,?,?,?)");
$result_events->execute(array($_POST['title'],$_POST['color'],$_POST['start'],$_POST['end']));
$result_events->execute();
$ultimoid = $pdo->lastInsertId();
if(lastInsertId($ultimoid)){
$_SESSION['msg'] = "<div class='alert alert-success' role='alert'>O Evento Cadastrado com Sucesso<button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
header("Location: index.php");
}else{
$_SESSION['msg'] = "<div class='alert alert-danger' role='alert'>Erro ao cadastrar o evento <button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
header("Location: index.php");
}
}else{
$_SESSION['msg'] = "<div class='alert alert-danger' role='alert'>Erro ao cadastrar o evento <button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
header("Location: index.php");
}
20/06/2019
Programador
Clique aqui para fazer login e interagir na Comunidade :)