Als ich anfing mit AJAX zu arbeiten, fiel es mir erstmals auf: Die angegebene Kodierung der Website ist wichtig, entscheidend. Vorher hatte ich diese im Grunde ignoriert, mir war der Sinn damals kaum klar. Doch dann, urplötzlich, sah ich statt der deutschen Umlaute und Sonderzeichen nur noch irgendwelche unverständlichen Symbole.

Das passiert, wenn man bspw. Daten auf einer Seite, die ISO-8859-1 als Zeichensatz verwendet, eingibt (z.B. als POST- oder GET-Variablen), sie aber als UTF-8-Daten in einer Datenbank speichern will (oder es jedenfalls so eingestellt hat).

Werbung

Werbeblocker aktiv?

Vermutlich aufgrund eines Werbeblockers kann an dieser Stelle leider keine Werbung angezeigt werden. Als Blog ist diese Website jedoch darauf angewiesen, um diverse Kosten abdecken zu können. Vielleicht möchtest du Servaholics ja in deinem Werbeblocker als Ausnahme hinzufügen und so unterstützen? 🙂

Encoding error with utf-8

Es kann aber auch passieren, wenn der PHP-Header einer Datei etwas Anderes vorgibt als das Meta-Tag für den Zeichensatz, z.B. wenn
<?php header('Content-type: text/html; charset=utf-8'); ?>
und
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
gleichzeitig verwendet werden.

Arbeitet man mit APIs wie z.B. der Twitter-API, so kann auch hier schnell ein Darstellungsfehler von Umlauten und Sonderzeichen entstehen, denn diese APIs verwenden normalerweise UTF-8.

Die allgemeine Empfehlung daher: Wessen Seite in allen Browsern und Ländern dieser Welt darstellbar sein soll, der sollte den" internationalen" Zeichensatz UTF-8 verwenden.

Eine gute Erklärung, welche Dinge ich umstellen musste, fand ich damals auf pc-erfahrung.de - besonders die Punkte 2, 3 und 4 waren für mich wichtig, da mein Editor damals (Notepad++) selbstständig schon richtig funktionierte (Punkte 1 und 5). Falls also jemand Probleme mit Umlauten, Sonderzeichen und/oder Kodierung allgemein haben sollte, so empfehle ich ihm diese Seite. 🙂

Andere Beiträge, die auf diesen Beitrag verlinken

Deine Meinung zu diesem Artikel?


2 Kommentare zu "Website auf UTF-8-Kodierung umstellen" (RSS)

Bei HTML-Codierung hatte ich damit nie Probleme (für ä reicht ja der Unicode ä aus), aber als ich mit LaTeX angefangen habe, wurden meine Umlaute nicht mehr richtig codiert, mein Editor war aus irgendeinem Grund auf UTF-7 gestellt ;D
Anscheinend wandelt sich der Code in den Kommentaren direkt um, deswegen hier mit leerzeichen: & a u m l ;