[PHP/JS] Zeichensatzporblem

krizzelfix

Commander
Registriert
Sep. 2005
Beiträge
2.626
[PHP/JS] Zeichensatzproblem

Hallo Zusammen,

ich habe ein Problem mit dem Versenden von Daten in JavaScript an PHP.
Dazu habe ich eine Funktion die alle Elemente einer Form zu einem String zusammensetzt und dann versendet.
Code:
 case 'textarea':
	    submitContent += formElem.name + '=' + escape(formElem.value) + '&'
        break;
Mein Problem ist jetzt das Escape. Wenn ich dass lösche, darf kein &-Zeichen in einem
Texte stehen, da dieser sonst abegschnitten wird. Wenn ich den String mit Escape bearbeite, dürfen keine Umlaute im Text stehen.

Meine Frage ist jetzt, wie kann ich das in PHP oder JS so convertieren, dass alle Zeichen richtig dargestellt werden?

Grüße

krizzel
 
Zuletzt bearbeitet:
Hallo,

Eine einfache Lösung wäre das Ersetzen der Umlaute durch "normale" Buchstaben, bevor du den String mit Escape bearbeitest, also einfach mit replace, und anstätt ä dann ae usw... :)

mfg
mitos

Edit: Wieso dürfen eigentlich keine Umlaute drinstehen? escape wandelt den Text ja um, da wir dann aus dem Umlaut irgendein %xx usw. ... Das müsste doch funktionieren, anschließend in der PHP-Datei kannst du den Text ja wieder dekonvertieren... :)
 
Zuletzt bearbeitet:
Ja das war auch mein Ansatz, habe noch keine Funktion gefunden, die es richtig zurückwandelt.
 
Habe ich schon probiert.
Bekomm immer noch sowas raus: f�r

Grüße

//Edit: Niemand noch eine Idee?
 
Zuletzt bearbeitet:
Besten Dank, damit scheint es zu Funktionieren.
Werde es, wenn ich wieder zu Hause bin(und mein Rechner wieder läuft) genauer testen.

Grüße

krizzel

//Edit: Habs mal getest, und der String wird immernoch nach einem & abgebrochen.

//Edit:
Habe grade durch zufall die Lösung gefunden.
Mit EncodeURIcomponent werden alle zeichen Codiert.

Grüße

krizzel
 
Zuletzt bearbeitet:
Zurück
Oben