Yerf!
- Decodieren von "%E4" in "ä"
Dies ist auch richtig - falsch ist jedoch, was Du damit tust. Die Dekodierung hat PHP beim Befüllen von $_REQUEST längst übernommen. Du dekodierst zwei zusätzliche Male.
Das hieße doch, dass wenn ich "echo $_REQUEST['antwort'];" schreibe, dass dann ein "ä" kommen muss. Aber wenn ich das mach, dann kommt nur ein tolles Fragezeichen an statt. Ich weiß es nicht, aber mir scheint, dass deine Argumentation damit dem Beweis nicht standhalten kann.
Cheatah übersieht hier glaub ich, dass Du die Daten per POST verschickst und somit keine Automatische kodierung stattfindet (die bei GET ja notwendig wäre). Allerdings ist deine eigene URL-Kodierung ebenfalls überflüssig, dein Umlautproblem kommt durch etwas anderes. Dein Request wird vom Browser als utf-8 versendet, PHP erwartet aber scheinbar ISO. Deshalb ist utf8_decode das einzige, was Du wirklich brauchst (oder PHP utf8 beibringen....)
Gruß,
Harlequin