Como saber se um insert com pdo deu erro?

12/09/2016

Como ao executar um insert no PDO eu sei se o mesmo ocorreu um erro e como retornar este erro?

 
$sql = "insert into cupons
                (compra)
                values(:compra)";
        $stmt = $this->db->prepare($sql);
        $stmt->bindParam(":compra", $compra, PDO::PARAM_INT);
        $stmt->execute();

Samuel Lopes

Currículo

Respostas

12/09/2016

Marcelo Santana Currículo

Boa tarde, Samuel!!
Quando um insert da certo, o "$stmt->execute()", retorna 1 para você, caso contrário retorna vazio.. para captura o erro, você pode utilizar "$stmt->errorInfo()".. Faz com esse teste abaixo.. Para testar ok..

if($stmt->execute()){
     echo("Registro adicionado com sucesso!!!") ;
}else{
    echo("Error ao adicionar novo registro: ");
    print_r($stmt->errorInfo());
}



Espero ter ajudado!
Abraço,
Marcelo Queiroz.
Responder Citar

12/09/2016

Samuel Lopes Currículo

Muito Obrigado pela resposta!
Responder Citar