我最近转换到PDO使用准备好的语句后,在这里提出了很多精彩的建议。我试图转换一个简单的视图计数器用于PDO,但无法实际更新表格。你们会介意指出我在这里做错了吗?谢谢!这个PHP PDO更新有什么问题?
旧的工作代码:
//Update view counter
$old_views = $postCrumb['topic_views'];
$new_views = $old_views + 1;
$qviewCount = "UPDATE topics SET topic_views='".$new_views."' WHERE cat_id='".$cidClean."' AND id='".$tidClean."' LIMIT 1";
$viewCount = mysql_query($qviewCount) or die(mysql_error());
新的非工作代码:
//Update view counter
$old_views = $postCrumb['topic_views'];
$new_views = $old_views + 1;
$qviewCount = "UPDATE topics SET topic_views='".$new_views."' WHERE cat_id=? AND id=? LIMIT 1";
$viewCount = $conn->prepare($qViewCount);
$viewCount -> execute(array($cidClean, $tidClean));
我也试过标注的条目,但是这并没有工作,要么:
$qviewCount = "UPDATE topics SET topic_views='".$new_views."' WHERE cat_id=':cat_id' AND id=':topic_id' LIMIT 1";
$viewCount = $conn->prepare($qViewCount);
$viewCount -> execute(array(':topic_id'=>$tidClean,':cat_id'=>$cidClean));
在你的最后一行你有'$ viewCount - > execute',不应该('),然后把'$ conn-> execute(...)' – Mekswoll 2012-04-02 03:59:02
@pEkvo:nope ... – zerkms 2012-04-02 04:04:45
@ ph34r:如果var_dump($ viewCount-> errorInfo() );'在你的代码之后? – zerkms 2012-04-02 04:06:59