2012-04-02 9 views
0

Ich habe vor kurzem nach vielen wunderbaren Vorschlägen auf PDO umgestellt, um vorbereitete Aussagen zu verwenden. Ich versuche, einen einfachen Ansichtszähler für die Verwendung mit PDO zu konvertieren, habe aber Probleme damit, die Tabelle tatsächlich zu aktualisieren. Würde es Ihnen etwas ausmachen, darauf hinzuweisen, was ich hier falsch mache? Vielen Dank!Was ist falsch mit diesem PHP PDO Update?

Old Arbeits Code:

//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()); 

New Non Arbeits Code:

//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)); 

Ich habe auch versucht die Einträge Beschriftung, aber das hat nicht funktioniert entweder:

$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)); 
+0

In Ihrer letzten Zeile haben Sie '$ viewCount -> ausführen', sollte nicht das '->' sei ein '=' und dann '$ conn-> ausführen (...)' – Mekswoll

+0

@pEkvo: nein ... – zerkms

+0

@ ph34r: was ist, wenn Sie 'var_dump ($ viewCount-> errorInfo()), '' nach Ihrem Code? – zerkms

Antwort

0

Die Variable, die du deklarierst $qviewCount (kleines 'V') und die du übergibst PDO::Prepare$qViewCount (Hauptstadt 'V') sind nicht gleich. Daher ist der Fehler korrekt, wenn Sie sagen, dass die Abfrage leer ist (da Sie nie $qViewCount (mit einem großen 'V') auf einen Wert initialisiert haben.

+0

Doh! I ' Ich habe so lange damit angefangen, herauszufinden, was ich falsch gemacht habe Ave keine Ahnung, wie ich das vermisst habe! Vielen Dank. – ph34r