Good Night!
I'm setting up a CRUD, I picked up some codes on the Internet and adapted to my need, everything was running perfectly fine, but when I got to the UPDATE part the application presented me with the following error: Warning: PDOStatement :: execute (): SQLSTATE [HY093].
I would like your help to solve my problem.
Follow Code:
<?php
$id=isset($_GET['id']) ? $_GET['id'] : die('ERROR: ID não encontrado.');
include 'config/database.php';
if($_POST){
try{
$query = "UPDATE alunos SET nome=:nome, responsavel=:responsavel, telefone=:telefone, ensino=:ensino, serie=:serie, visita=:visita, entrevista=:entrevista, teste_data=:teste_data, teste_result=:teste_result, matricula=:matricula, data_matricula=:data_matricula, observacao=:observacao WHERE id = :id";
$stmt = $con->prepare($query);
$nome=htmlspecialchars(strip_tags($_POST['nome']));
$responsavel=htmlspecialchars(strip_tags($_POST['responsavel']));
$telefone=htmlspecialchars(strip_tags($_POST['telefone']));
$ensino=htmlspecialchars(strip_tags($_POST['ensino']));
$serie=htmlspecialchars(strip_tags($_POST['serie']));
$visita=htmlspecialchars(strip_tags($_POST['visita']));
$entrevista=htmlspecialchars(strip_tags($_POST['entrevista']));
$teste_data=htmlspecialchars(strip_tags($_POST['teste_data']));
$teste_result=htmlspecialchars(strip_tags($_POST['teste_result']));
$matricula=htmlspecialchars(strip_tags($_POST['matricula']));
$data_matricula=htmlspecialchars(strip_tags($_POST['data_matricula']));
$observacao=htmlspecialchars(strip_tags($_POST['observacao']));
$visita=date("Y-m-d",strtotime(str_replace('/','-',$visita)));
$entrevista=date("Y-m-d",strtotime(str_replace('/','-',$entrevista)));
$teste_data=date("Y-m-d",strtotime(str_replace('/','-',$teste_data)));
$data_matricula=date("Y-m-d",strtotime(str_replace('/','-',$matricula)));
$stmt->bindParam(':nome', $nome);
$stmt->bindParam(':responsavel', $responsavel);
$stmt->bindParam(':telefone', $telefone);
$stmt->bindParam(':ensino', $ensino);
$stmt->bindParam(':serie', $serie);
$stmt->bindParam(':visita', $visita);
$stmt->bindParam(':entrevista', $entrevista);
$stmt->bindParam(':teste_data', $teste_data);
$stmt->bindParam(':teste_result', $teste_result);
$stmt->bindParam(':matricula', $matricula);
$stmt->bindParam(':data_matricula', $data_matricula);
$stmt->bindParam(':observacao', $observacao);
if($stmt->execute()){
echo "<div class='alert alert-success'>Atualização realizado com sucesso.</div>";
}else{
echo "<div class='alert alert-danger'>Não foi possível atualizar o registro. Por favor, tente novamente.</div>";
}
}
catch(PDOException $exception){
die('ERROR: ' . $exception->getMessage());
}
}?>
Thanks in advance for the help.