Wurzelzwerg: PHP, Ajax und Umlaute

Beitrag lesen

Hallo allerseits,

ich habe mir eine Ajax-Anwendung gebaut, bei der Daten asynchron abgefragt werden und bei der anschließend Teile der Seite aktualisiert werden. Leider habe ich ein Problem mit Umlauten, dort erscheint nur ein Fragezeichen und je nach Umlaut fehlen einige nachfolgende Zeichen. Also habe ich die Daten vor dem Senden im PHP-Teil mit der Funktion "urlencode" codiert und nach dem Empfangen javascriptseitig mit "unescape" wieder decodiert. FUnktioniert auch, die Umlaute sind da. Allerdings habe ich festgestellt, dass Leerzeichen plötzlich durch "+" ersetzt werden, was auch nicht das ist, was ich brauche. Nun kann ich natürlich die Leerzeichen maskieren und separat umsetzen, aber ich weiß nicht, welche Schweinereien mir hier noch durch die Lappen gehen und welche Inhalte dann nicht mehr passen.

Deshalb meine Frage: Hat jemand eine andere Idee. Meine Idee ist es, den String so convertieren, dass jedes Zeichen bzw. Byte durch den Hexadezimalwert dargestellt wird. Dann wird das Ganze zwar doppelt so lang, aber ich gehe auf Nummer sicher.

Hier brauche ich aber Hilfe. Kennt jemand einen schnelle Vorgehensweise in PHP, um eine Zeichenkette in ihre Hex-Werte zu Konvertieren also "AB" wird zu "4142" und in Javascript um das Ganze wieder "umzudrehen"??

vielen Dank schonmal für die Geduld und für die Hilfe ;-)