Transation PDO não funciona em UPDATE
Ola a todos
Estou com um problema para fazer uma transação de UPDATE mysql com PDO
Simplesmente não atualiza o BD e também não retorna erro
Meu código é o seguinte:
$PDO->beginTransaction();
$sql = "UPDATE clientes SET tipo=:tipo, cpf=:documento1, rg=:documento2, nome=:nome, login=:login, senha=:senha, data_nascimento=:data_nascimento, sexo=:sexo WHERE id=:id_cliente";
$stmt = $PDO->prepare($sql);
$stmt->bindParam(":id_cliente", $id_cliente, PDO::PARAM_INT);
$stmt->bindParam(":tipo", $tipo);
$stmt->bindParam(":documento1", $documento1);
$stmt->bindParam(":documento2", $documento2);
$stmt->bindParam(":nome", $nome);
$stmt->bindParam(":login", $login);
$stmt->bindParam(":senha", $senha);
$stmt->bindParam(":data_nascimento", $data_nascimento);
$stmt->bindParam(":sexo", $sexo);
$result = $stmt->execute();
if (!$result){
//die('Erro ao cadastrar usuario');
$arr = $stmt->errorInfo();
var_dump($arr);
exit;
}else{
$_SESSION["user_login"] = $email;
$_SESSION["user_nome"] = $nome;
$altera_contatos = AlteraContatos($id_cliente, 0, $telefone, $telefone2, $celular, $fax, $email, $msn, $site, $skype, $PDO);
if(!$altera_contatos){
$PDO->rollBack(); /* Desfaz a inserção na tabela de movimentos em caso de erro na query da tabela conta */
$_SESSION["ErrorAdmin"] = " Já existe um usuário cadastrado com este E-mail";
header("Location: altera_cliente.php?id_cliente=$id_cliente");
}
$_SESSION["ErrorAdmin"]="Dados do cliente atualizados com sucesso!!!";
header("Location: lista_clientes.php");
exit;
}
$PDO->commit();
Alguém sabe o porque?
Obrigado deste já
Discussão (0)
Carregando comentários...