Moin,
für die Anzeige einer DB-Tabelle mit z.Z. knapp 1200 Einträgen kann ein Filter für Lied-Titel gesetzt werden, also zunächst mal ein Wort (später mehrere Worte) als Suchbegriff.
...
WHERE titel LIKE '%schön%'
In den gefundenen Titeln markiere ich den Suchbegriff schön schön rot und kursiv:
Weniger schön ist, dass auch schön ohne Umlaut gefunden wird, was natürlich per PHP nicht markiert werden kann (weil PHP unterscheidet).
Habe recherchiert zu Datenbanksuche mit Umlaut
, bin aber aus den Ergebnissen nicht schlau geworden. Und genaugenommen will ich das auch gar nicht auf Umlaute begrenzen, sondern auf alle Abarten von ASCII-Zeichen, die in europäischen Sprachen vorkommen (zunächst lateinische Schrift, griechisch, kyrillisch haben wir noch nicht) wie
å è ç ñ ...
Dann kommt noch das Problem dazu, dass schön in der DB und/oder per Suchbegriff auch schoen geschrieben werden kann. Etwa auf nicht-deutschen Tastaturen.
Da dachte ich mir, dass man checkboxen kann ö = oe / é = e / ...
Ich habe noch ein altes Lexikon. Da steht etwa: „Was unter C vermisst wird, siehe unter K und Z“. Entsprechend könnte ich formulieren: was unter ö vermisst wird, siehe unter oe und ø
Ob das Sinn macht oder eher verwirrt, muss ich später entscheiden, erstmal das Handwerk lernen.
Im Hinterkopf habe ich, dass man dem LIKE sowas hinzufügen wie utf8_unicode_ci
- finde das aber nicht in der LIKE Dokumentation. Wenn ich ein DB-Feld einrichte, kann ich unter Kollation dutzende solcher Einträge wählen. Aber keine Ahnung, was sie bewirken.
Gruß, Linuchs
Edit: Habe was gefunden:
AND titel LIKE '%schön%' COLLATE 'utf8_bin'
Nun kommt schon nicht mehr vor, aber Schön auch nicht.