nchristoph
Erfahrenes Mitglied
Hallo Zusammen,
folgendes Problem.
Wie kann ich eine WHERE Klausel in PHP mit mehreren Werten erstellen?
Mein Code schaut so aus:
Funktioniert soweit so gut. Sobald ich allerdings ein OR Holzart LIKE :suchbegriff hinschreibe, kommt folgender Fehler:
Ich habe in den Verbindungseinstellungen die Emulierten Prepares abgeschaltet und lt. dem, was ich im Internet gefunden habe, hängt das damit zusammen.
Meine Fragen:
- Wie mache ich mehrere Werte bei der WHERE Klausel das meine Abfrage wieder funktioniert?
- Bringt das Abschalten von Emulate Prepares wirklich so viel, das sicher die Arbeit mit dem umschreiben lohnt?
mfg
Christoph.
folgendes Problem.
Wie kann ich eine WHERE Klausel in PHP mit mehreren Werten erstellen?
Mein Code schaut so aus:
PHP:
$suchbegriff = str_replace(" ", "", $_POST["suchbegriff"]);
$sql = ( "SELECT
ID,
Holzart,
Klasse,
Trockenheit,
Partie,
Starke,
Pfad,
DATE_FORMAT(Datum,'%d.%m.%Y')AS Datum,
DATE_FORMAT(anderungsdatum,'%d.%m.%Y')AS anderungsdatum
FROM
suchmaschine
WHERE
Partie LIKE :suchbegriff
ORDER BY
Holzart, Starke, Klasse, Partie ASC");
include('../templates/suche/sucheheader.tpl');
$stmt = $db_conn->prepare($sql);
$stmt->bindValue(':suchbegriff', "%{$suchbegriff }%", PDO::PARAM_STR);
$stmt->execute();
Funktioniert soweit so gut. Sobald ich allerdings ein OR Holzart LIKE :suchbegriff hinschreibe, kommt folgender Fehler:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number' in C:\xampp\suchmaschine\inc\suche.php:33 Stack trace: #0 C:\xampp\suchmaschine\inc\suche.php(33): PDOStatement->execute() #1 {main} thrown in C:\xampp\suchmaschine\inc\suche.php on line 33
Ich habe in den Verbindungseinstellungen die Emulierten Prepares abgeschaltet und lt. dem, was ich im Internet gefunden habe, hängt das damit zusammen.
Meine Fragen:
- Wie mache ich mehrere Werte bei der WHERE Klausel das meine Abfrage wieder funktioniert?
- Bringt das Abschalten von Emulate Prepares wirklich so viel, das sicher die Arbeit mit dem umschreiben lohnt?
mfg
Christoph.