Ich versuche, die name
Feld in meiner Datenbank mit LIKE
. Wenn ich das SQL "von Hand" wie folgt gestalte:
$query = "SELECT * \n"
. "FROM `help_article` \n"
. "WHERE `name` LIKE '%how%'\n"
. "";
$sql = $db->prepare($query);
$sql->setFetchMode(PDO::FETCH_ASSOC);
$sql->execute();
Dann wird es relevante Ergebnisse für "wie" zurückgeben.
Wenn ich es jedoch in eine vorbereitete Erklärung verwandle:
$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();
Ich erhalte immer null Ergebnisse.
Was mache ich falsch? Ich verwende vorbereitete Anweisungen an anderen Stellen in meinem Code und sie funktionieren gut.