Probleme mit urlencode (PHP) unescape(flash)

Baron Sengir

Mitglied
Hallo,

ich habe ein kleines (eigentlich für mich ein sehr ernstes Problem):

Ich lade in Flash MX Ver. 6 mittels Action Script eine Text-Datei ein. Das klappt auch alles wunderbar. Der Inhalt dieser Textdatei wird zeilenweise an eine ListBox weitergeben - funktioniert auch.

Probleme machen nun Sonderzeichen wie äöüÄÖÜßé.....

Klar, habe ich mir gedacht, da die Text-Datei mit PHP erzeugt wird, nimmst Du die htmlentities und konvertierst es in Flash zurück - geht nicht, kann Flash nicht. Schade.

Dann habe ich gelesen, dass Flash aber urlencoden und urldecoden kann. Super, dachte ich, das kann PHP ebenfalls. Ich habe dann also meine Text-Datei in PHP mittels urlencode encodiert und hoffte, dass in Flash wieder zurückkonvertieren zu können. Diese Funktion heißt in Flash natürlich nicht urldecode (wie jeder normale Programmierer denken würde), sondern unescape. Egal, unescape drauf losgelassen und gestaunt:

Teilweise wurde richtig konvertiert, teilweise falsch. Ich weiß jetzt natürlich nicht, wer falsch konvertiert: Flash oder PHP, wobei ich denke, der Fehler liegt eher bei Flash....

Beispiel:

Olé Guapa wird von PHP in Ol%E9+Guapa konvertiert. Flash verlangt aber Ol%C3%A9%20Guapa.

BTW: Die Leerzeichenkonvertierung funktioniert.

Na super. Wenn ich mir jetzt nicht die Mühe machen will, eine eigene Encodierroutine in PHP und eine eigene Decodierroutine in ActionScript zu programmieren, brauche ich Eure Hilfe.

Hat von Euch jemand eine Idee oder gar eine Lösung meines Problems?
Wäre toll.

Liebe Grüße

Markus
 
Mh, ich schätze dein Problem beruht auf dem gleichen das ich auch mal hatte ^^ bevor du mit Flash irgendetwas einließt solltest du dich vergewissern das der entsprechende Text UTF8 formatiert ist, sonst geht in Flash nur die Hälfte (keine Umlaute etc.)...

In PHP ist das sogar relativ einfach und funktioniert mit:
PHP:
utf8_decode & utf8_encode

zusätzlich ist es wahrscheinlich erforderlich den Header ein kleines bißchen zu modifizieren, damit Flash das auch wirklich als UTF8 erkennt ...
PHP:
header('Content-type: text/richtext; charset=UTF-8');

ich hoffe ich konnte dir ein wenig weiterhelfen

gruß irresponder
 
Hi,

sorry für die späte Reaktion, habe aber momentan super viel Stress und bin so nicht zum Programmieren und Ausprobieren gekommen.

Ich danke Dir ersteinmal für die Hinweise. Ich werde sie auch ausprobieren. Wahrscheinlich aber erst gegen Ende der Woche (da habe ich mehr Zeit).

Ich werde dann selbstverständlich berichten.

Liebe Grüße

Markus
 

Neue Beiträge

Zurück