Mysql
 sql >> Datenbank >  >> RDS >> Mysql

PDO IN() Array Statement UND ein Platzhalter

Lösung

Dies sollte funktionieren, wenn $values ist ein Array:

$query = "SELECT * FROM table WHERE id IN ($placeholders) AND product=?";
$stm->execute(array_merge($values, array($product)));

Erklärung

execute() erwartet, dass ein Parameter – in diesem Fall ein Array – bereitgestellt wird. Durch Hinzufügen von array_merge($values, array($product)) Sie erstellen ein Array mit $product am Ende hinzugefügt, damit die Abfrage korrekt funktionieren sollte.

Sehen Sie sich die Demo hier an:http://ideone.com/RcClX