这个Mysql PDO执行有什么问题导致它无法执行?

时间:2012-01-09 00:23:03

标签: php mysql pdo execution

此查询未执行,我确信它会覆盖代码,它只是不会更新行。

$statement = $db->prepare("UPDATE users SET data=:data WHERE id=:id");
$statement->execute(array(':data' => $data, ':id' =>     $_REQUEST['user_id']));

可能是什么问题?我100%表示$_REQUEST['user_id']有效且存在于DB中,并且该数据也包含一些内容。我真的很无能为什么不执行。

1 个答案:

答案 0 :(得分:2)

首先尝试binding你的参数:

$statement = $db->prepare("UPDATE users SET data=:data WHERE id=:id");

$statement->bindValue(':data', $data, PDO::PARAM_STR);
$statement->bindValue(':id',  $_REQUEST['user_id'], PDO::PARAM_INT);

$statement->execute();