prepare-> execute返回false

时间:2015-06-10 09:29:57

标签: php mysql session pdo

我在php / mySql中遇到了一些问题。

以下是代码:

$updateLastchange = "UPDATE lastchange SET student = ? date = ? WHERE tutor= ? ";
$req = $db->prepare($updateLastchange);
if($req->execute(array($_SESSION['toHelp'], $date, $_SESSION['email'])))
{
    //some code that should be executed
}

您还必须知道“lastchange”实际上包含tutor = $ _SESSION ['email']的行,$ _SESSION ['toHelp']已定义且日期只是一个日期(“Ymd H:i:s “)早一点创造。

问题是execute返回false,我有语法错误:

  

致命错误:带有消息的未捕获异常'PDOException'   'SQLSTATE [42000]:语法错误或访问冲突:1064您有   SQL语法错误;查看与您的手册相对应的手册   在'date =附近使用正确语法的MySQL服务器版本   '2015-06-10 11:09:53'哪里有导师='导师''

我不明白为什么......

我使用WAMP(我不知道你是否需要知道)。

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

您在查询中忘记了,

$updateLastchange = "UPDATE lastchange SET student = ?, date = ? WHERE tutor= ? ";

如果你想在你的数据库中存储一个变量,我认为它是可能的(虽然我还没有尝试过):

$variable = '$variableYouWantToStore';

执行此操作时,只需使用一个勾号('),而不是双勾(")。您可以参考here

相关问题