Warum funktioniert bei einer Suche oder einem Filter/Rule das Filtern nach Umlauten nicht ?

Wenn bei einer Rule (z.b. in Zusammenhang mit einer Suche, o.ä.) ein filter keine Ergebnisse liefert wenn man ein Umlaut verwendet, könnte es an dem eingestellten Encoding der Datenbank liegen, selbst wenn die Anzeige aller Umlaute fehlerfrei funktioniert.

Korrekte Einstellung aller Encodings am Beispiel MySQL:

Um dies zu überprüfen, loggen Sie sich mit einem mysql client ein und sehen sich die Variablen an - 'show variables'. Diese müssten z.B. folgende Einstellungen widerspiegeln.

| character_set_client            | utf8                        |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |

Vor allem wichtig hier sind character_set_server und character_set_database.

Sollte character_set_database nicht korrekt sein, öffnen Sie ihr my.cnf config file und fügen Sie folgende option in der [mysqld] section hinzu:
character-set-server=utf8

Sollte character_set_server nicht korrekt sein, setzen sie folgenden SQL befehl ab:
ALTER DATABASE CHARACTER SET utf8;


Kontrollieren Sie erneut alle Variablen von 'show variables'. Jetzt sollten alle Einstellungen 'utf8' anzeigen, und der Filter korrekt funktionieren.



Seite drucken
Seite empfehlen


Downloads & Links