PDOでSELECTをprepareで打つとき
特にWhere句に文字列を渡すようなときだとbindParam、bindValueじゃだめらしい。
?で変数箇所を指定して、その順番に配列で値を渡すようにする。
このあたりJavaと一緒だ。
$stmt = $pdo->prepare("SELECT * FROM test where name = ? and color = ?"); $stmt -> execute(array("hoge", "red")); while($row = $stmt->fetch(PDO::FETCH_ASSOC)){ echo implode(", ", $row) . PHP_EOL; }