phpbar.de logo

Mailinglisten-Archive

[php] PDO mit bindValue (mal wieder)

[php] PDO mit bindValue (mal wieder)

Christian Wohlgemuth info at codesign-online.de
Mon Feb 4 16:47:02 CET 2008


Hallo Liste,

ich habe wieder ein Problem mit PDO und bindValue.
Diesmal bei folgender Query:

[..]
$query = 'SELECT * FROM `tabelle` WHERE `tabelle`.`id` IN (?)';
$stmt = $pdo->prepare($query);
$stmt->bindValue(1, implode(', ',$array));
$stmt->execute();
[..]

leider bekomme ich laut mysql.log folgendes Query:
[..]
SELECT * FROM `tabelle` WHERE `tabelle`.`id` IN ('1, 3, 7')
[..]
und somit das falsche Ergebnis.

Wo muss ich drehen, damit PDO die Werte nicht in Hochkomma schreibt, 
also so:
SELECT * FROM `tabelle` WHERE `tabelle`.`id` IN (1, 3, 7)

Ich habe gesehen, dass das Probliem nicht auftritt, wenn kein Komma, 
also nur ein Wert im Array, vorhanden ist.

Ich habe auch schon versucht, als dritten Parameter von bindValue den 
Datentyp (Int) zu übergeben, aber auch damit keine richtiges Ergebnis 
erzielt.

vielen Dank
Christian

php::bar PHP Wiki   -   Listenarchive