提问者:小点点

MySql php pdo存储过程PDOException:SQLState[HY000][duplicate]


赫杰。

我在执行我的代码时会收到这个错误信息?我在表单中发布值“2020-12-19”$data_input_textfield=$_post[“date”];。我不知道1989年是从哪里来的...

消息:

Exception has occurred.
PDOException: SQLSTATE[HY000]: General error: 1525 Incorrect DATE value: '1989'

代码:

$sql = "CALL booking_date_input($data_input_textfield)";
    $stmt = $dbh->getInstance()->prepare($sql);
    $stmt->execute();
    $date=$stmt->fetch();

最好的问候/Svante


共1个答案

匿名用户

您可以尝试一种略有不同的方法,向sql命令提供一个占位符,并使用绑定到该占位符的变量执行语句,如下所示:

$sql = "CALL `booking_date_input`(:date);";
$stmt = $dbh->getInstance()->prepare($sql);
$stmt->execute(array(':date'=>$data_input_textfield));
$date=$stmt->fetch();