dedlfix: prüfen ob eine Eingabe in einem Input-Feld GB 2312 enthält

Beitrag lesen

echo $begrüßung;

weis jemand wie man prüft ob eine Eingabe in einem Input-Feld dem Zeichensatz GB 2312 für vereinfachtes chinesisch entspricht, bzw. wie man es erzwingt.

Einen Text kann man nur gemäß den Regeln einer bestimmten Zeichenkodierung prüfen. Das geht nur mit Mehrbyte-Kodierungen, die für bestimmte Bytefolgen ein Zeichen definieren und andere als ungültig erklären. Finden sich keine ungültigen Bytefolgen, ist das allerdings nur ein Indiz, denn die Bytefolgen können unter Umständen auch zu anderen Kodierungen passen und außerdem gibt es immer noch jede Menge Einbyte-Kodierungen, die im Prinzip immer passen. Man könnte dann nur anhand von Wahrscheinlichkeiten bestimmte Kodierungen ausschließen. Das Ergebnis der Dekodierung kann aber letztlich nur ein Mensch als sinnvoll oder nicht beurteilen. Ansätze mit Prüfungen gegen Wörterbücher liefern nicht in jedem Fall ein korrektes Ergebnis.

Zwingen kann man einen Browser in keinem Fall. Man kann Vorgaben machen und hoffen, dass Browser und Anwender sie einhalten. Da wären die Kodierung der Seite in der das Formular/Eingabefeld steht und das accept-charset-Attribut eines Formulars, aber letzteres wird nicht in jedem Fall sinnvoll von den Browser berücksichtigt.

echo "$verabschiedung $name";