Pamela Punkt: Türkisch in DB speichern

Beitrag lesen

Davon ganz unabhängig solltest du Texte meiner Meinung nach besser erst dann mit htmlspecialchars() sichern, wenn es wirklich nötig ist - nämlich direkt bei der Ausgabe. Der Datenbank tut HTML nicht weh

Oh doch.

Nein. Dass MySQL wegen HTML in irgendeinem Feld sich verselbständigt hätte oder gar explodiert wäre, ist mir jedenfalls noch nicht untergekommen.

Zum anderen lässt sich mit einer Ersatzschreibweise keine gescheite Stringverarbeitung (inklusive Sortierung) mehr betreiben. Hühner werden beispielsweise vor Hasen einsortiert, weil &...; kleiner als a ist.

Da hast du zwar eine richtige Schlussfolgerung gezogen, aber als Antwort auf meine lang und breit ausgeführte Empfehlung ist sie völlig belanglos.

Wenn er die Texte erst, siehe Zitat oben, "bei der Ausgabe" durch htmlspecialchars() jagt, nicht schon nach der Eingabe, kommt logischerweise auch kein Hühnchen in die Datenbank.

Zum einen verbrauchen die NCRs (oder andere Ersatzschreibweisen üblicherweise) mehr Zeichen als das originale korrekt kodierte.

Dabei kann beim Speichern in Feldern mit begrenzter Zeichenanzahl ein Verlust auftreten.

Das erscheint mir nun, mit Verlaub, etwas albern. Wer wegen der Kodierung einiger Zeichen Datenverlust erleidet, der hat ein ganz anderes Problem als die Kodierung: Die zu knapp bemessenen Felder.

Aber, ich schreib's zum dritten Male, wenn's nach mir geht, sollen die Texte ja gar nicht HTML-kodiert in der Datenbank landen.