Moin!
Im HTTP-Header deines Formulars und im HTML-Kopf (Meta-Angabe) kann stehen, welchen Zeichensatz diese Seite verwendet. Dort muß UTF-8 drinstehen - und alle Zeichen müssen dann natürlich UTF-8-codiert sein.
Ich habe fast alles verstanden....Nur eins nicht:
Wie bzw. wo ändere ich den Header meines Formulares? Meinst Du damit dass der server die daten anders verarbeiten muss?
Nein, die Verarbeitung bleibt exakt gleich - die gesendeten Bytes ändern sich.
Der HTTP-Header deines Formulars ist die einzig relevante Angabe, mit welchen Zeichensatz der Browser die HTML-Seite zu interpretieren hat. Diese Angabe kann beispielsweise durch das explizite Ausgeben eines HTTP-Headers mit PHP erfolgen
headers("Content-type: text/html;charset=UTF-8");
Alternativ kann man dem Apache sowohl in seiner httpd.conf als auch in einer .htaccess konfigurieren, mit welchem Standardzeichensatz er HTML-Seiten ausliefern soll.
Und ich bin mir nicht ganz sicher, vermute aber (ganz wild), dass der Apache auch die META-Angabe in HTML-Dateien parst, erkennt und als Header senden könnte.
In jedem Fall solltest du dir das im Browser angekommene Resultat ansehen. Opera hat dafür in seinen Panels "Info" ("Encoding from server" ist da wichtig), Mozilla sagts dir über "Tools"->"Page Info" (oder Strg+J), und der Internet Explorer sagts dir, wenn du "View"->"Encoding" wählst und den dort angehakten Zustand abliest. (Sorry, die deutschen Versionen werden ihre Menüs anders benannt haben.)
- Sven Rautenberg