MySQL: HTML_UnEncode in Where-Klausel

soezkan

Erfahrenes Mitglied
Hallo zusammen,

ich habe eine DB-Tabelle, in der Wörter in einem Wörterbuch mit HTML-Enties, also ü ä etc.
abgespeichert sind.

Jetzt benutze ich eine Autovervollständigung, welche mir bei der Suche entsprechend passende
Begriffe anzeigen soll. Das klappt bisher auch. Nur aber, wenn ich z.B. nach "Tür" suche, wird
nichts gefunden, da ja der Begriff als "Tür" in der DB steht

Jetzt habe ich folgendes versucht:
Code:
SELECT german FROM dictionary WHERE HTML_UnEncode(german) LIKE 'Tür%'

klappt aber leider nicht. Vielleicht mache ich da einen Denkfehler, da ich auch nicht wirklich der
MySQL-Experte bin.

Danke für Hilfe!

Liebe Grüße
Soezkan
 
Ich weiß nicht, ob da ein Fehler drin ist, aber ich würde die folgendes vorschlagen:

Du kannst bereits mit PHP/Perl die Umlaute HTML-Gerecht maskieren, so dass zum Beispiel folgendes rauskommt:
SQL:
SELECT german FROM dictionary WHERE german LIKE 'T&uuml\;r';

EDIT: Eventuell lässt der Zeichensatz der Tabelle keine Umlaute zu
 
Warum speicherst du das Wörterbuch nicht gleich mit Umlauten ab?

Bzw. schreibst dir ein Script, dass du einmal durchlaufen lässt um die Umlaute zu "übersetzen" , dann müsstest du nicht immer die eingabe auf Umlaute prüfen.
 
Zurück