Hi,
ich habe ein Problem bei einer Datenbankabfrage.
Ich werte eine Suchabfrage aus (Modellsuche unter verschiedenen Verkaufsartikeln)
PHP-Code:
SELECT artnr FROM `produktliste` WHERE `modell` LIKE "%'.implode('%" AND `modell` LIKE "%', $produktsuche).'%"
Funktioniert alles wie erwartet, bis man als Suche so etwas wie "Artikel Soundso XXL" oder "XS Artikel" übergibt. Das X am Anfang irgendeines Wortes der Suchanfrage erzeugt einen Fehler:
Code:
Fatal error: Uncaught exception Exception with message Too few arguments to build the query string thrown in system/modules/core/library/Contao/Database/Statement.php on line 331
Weiter steht da:
Code:
#0 system/modules/core/library/Contao/Database/Statement.php(262): Contao\Database\Statement->replaceWildcards(Array)
Wird ein X unter Contao irgendwie auch als Wildcard in einem SQL-Query verwendet? Und wie kann ich das Problem umgehen?
Ich habe es ganz plump mal so versucht:
Code:
str_replace("X","derHEXA-Code für X",$produktsuche);
aber das war wohl zu schlicht gedacht. Ich erzeuge dann zwar keinen Fehler, aber ein Suchresultat gibt es dann auch nicht mehr.
Vielen Dank für Unterstützung.