2009-06-24 3 views
0

Ich versuche vorbereitete Anweisungen in einem PHP-Skript zu verwenden, das mit PDO auf eine SQLite3-Datenbank zugreift.PHP - PDO SQLite3 vorbereitete Anweisungen

Die normale Version dieser Abfrage funktioniert wie erwartet:

$q1 = "SELECT COUNT(*) FROM fruits WHERE name='apple'"; 
echo $db->query($q1)->fetchColumn(); 

jedoch meine vorbereitete Anweisung Version nichts ausgibt.

$q2 = "SELECT COUNT(*) FROM fruits WHERE name='?'"; 
$s = $db->prepare($q2); 
$s->execute("apple"); 
echo $s->fetchColumn(); 

Was mache ich falsch? Ich versuchte mit PHP 5.2 und PHP 5.3, mit den gleichen Ergebnissen.

Antwort

6

Ich denke, Sie brauchen keine zusätzlichen Apostrophe vor und nach der? und Sie sollten ein Array verwenden: $ s-> execute (array ("apple"));

+0

danke! das hat funktioniert. –