LIKE
を使用してデータベースのname
フィールドを検索しようとしています。名前付きパラメータをLIKE用PDOで使用する
$query = "SELECT * \n"
. "FROM `help_article` \n"
. "WHERE `name` LIKE '%how%'\n"
. "";
$sql = $db->prepare($query);
$sql->setFetchMode(PDO::FETCH_ASSOC);
$sql->execute();
次に、 'how'の関連する結果を返します。
しかし、私はプリペアドステートメントにそれを回すとき:私は常にゼロ結果を取得しています
$query = "SELECT * \n"
. "FROM `help_article` \n"
. "WHERE `name` LIKE '%:term%'\n"
. "";
$sql->execute(array(":term" => $_GET["search"]));
$sql->setFetchMode(PDO::FETCH_ASSOC);
$sql->execute();
。
私は間違っていますか?私はコードの他の場所で準備されたステートメントを使用しており、正常に動作します。
[PDO Prepare文が処理パラメータを持たない]重複している可能性があります(http://stackoverflow.com/questions/2434560/pdo-prepare-statement-not-processing-parameters) – outis