molily: Sonderzeichen in Ajax

Beitrag lesen

Hallo,

rein = 'ajax_nachricht_send2.inc.php?empfaenger='+empfaenger+'&betreff='+betreff+'&nachricht='+nachricht;

Hoffentlich ist dein Formular auch ohne JavaScript absendbar. Ajax braucht man dafür nun wirklich nicht.

Daher meine Frage: Wie muss ich meinen Javascript-Code verändern, damit die Umlaute korrekt maskiert werden (es liegt ja wohl an Javascript)?

Du solltest escape verwenden.
Wobei das bei Zeichen außerhalb von ISO-8859-1 beknackte Resultate erzielt. Da musst du aufpassen.

Überhaupt, warum benutzt du nicht UTF-8? Was hat dein EDITOR mit der Speicherung von Text in der Datenbank zu tun?

Für UTF-8-Kodierung wäre dann encodeURI(Component) gedacht.

Ich habe mal den Test gemacht, und die Datei ajax_nachricht_send2.inc.php?empfaenger=Hendrik&betreff=Guten%20Abend&nachricht=Äpfel im Browser aufgerufen. Dort wurde dann natürlich automatisch das Ä durch ein %C4 ersetzt.

Das ist überhaupt nicht »natürlich«.
Die meisten Browser haben heutzutage eingestellt, dass sie URIs mit UTF-8 an den Server senden. Es sollte dann statt %C4 daher %C3%84 herauskommen.

Mathias