Umlaute ersetzten

Das liegt vermutlich daran, dass du die verwendete Zeichenkodierung nicht explizit angibst und der Internet Explorer dann auf die Standardkodierung zurückgreift, was vermutlich Windows-1252 ist.
Denn das Ä wird bei UTF-8 mit 0xC384 kodiert, was bei Windows-1252 den Zeichen Ä entspricht.

Am besten gibst du die Zeichenkodierung im HTTP-Header an. Dies geht entweder mit Webserver-Mitteln (bei Apache die AddCharset- oder AddDefaultCharset-Direktive) oder mithilfe von PHP, beispielsweise:
PHP:
header('Content-Type: text/html; charset=utf-8');
Wichtig ist, dass diese vor jeglicher Ausgabe geschieht, damit der HTTP-Header noch verändert werden kann.
 
Und das funktioniert? :)

Hab es jetzt so gemacht. Er schreibt es aber immer noch so wie vorher in die DB!

PS: Das bringt auch nix, da er im IE das gleiche wie vorher macht.

Hmm naja da muss ich mich warscheinlich damit abfinden. Da haben halt die IE-Nutzer Pech gehabt :suspekt:
 
Zuletzt bearbeitet:
Das in die Datenbank etwas „Falsches“ geschrieben wird, liegt vermutlich daran, dass sie nicht auf UTF-8-kodierte Daten eingestellt ist sondern sie als ISO-8859-1-kodiert (Standardwert) interpretiert. Das müsstest du also auch noch anpassen, so dass auf allen Ebenen dieselbe Zeichenkodierung verwendet wird.
 
Zurück