我最近轉換到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