ROG Innovation Logo

Tutorials, Gadgets und vieles mehr - Idea. Creation. Success. - Let's create the future!

Website Zeichencodierung

Damit alle gebräuchlichen Zeichen, Umlaute und Sonderzeichen richtig dargestellt werden und auch richtig in und aus einer allfälligen Datenbank wie mysql geschrieben/gelesen werden, empfehle ich für eine HTML5 Website unbedingt den Zeichensatz "UTF-8" (ohne BOM)!
In den Header der Website muss dafür folgender meta Tag geschrieben werden.
Am besten wird bei jedem HTML- oder Texteditor wie Notepad++ immer mit der Codierung "UTF-8 ohne BOM" gearbeitet und die Webseitendokumente auch so gespeichert.

Mögliche Ursachen bei einer falschen Codierung oder wenn mit zwei unterschiedlichen Zeichensätzen gearbeitet wird sind die schwarzen Fragezeichen fragezeichen im Text

Damit diese Codierungen vom Browser richtig interpretiert werden muss im HTTP-Header der Zeichensatz angegeben werden (meistens utf-8 oder ISO-8859-1).
Dieser sollte sich möglichst ganz am Anfang des Head-Elements befinden.

Header Zeichensatz Definition
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Bei UTF-8 müssen alle restlichen meta Tags mit weiteren Zeichencodierungen wie ISO-8859-1 entfernt werden.
Zudem müssen die Umlaute im Text meistens bei der Umwandlung in einen anderen Zeichensatz z.B. von ANSI in UTF-8 ohne BOM manuelle nochmals geschrieben werden, ansonsten wird ein "ü" mit "ü" dargestellt.


Unterschied utf-8 VS iso-8859-1

ASCII ist eine Teilmenge von ISO-8859. ISO-8859 ist eine Teilmenge von UTF-8. Somit sollte eigentlich eine Abwärtskompatibilität vorhanden sein.
UTF-8 eignet sich vor allem für mehrsprachige Website da dies eine globale Sprache unterstützt und nicht wie bei der ISO Codierung je nach Sprache die Codierung angepasst werden muss.
In UTF-8 werden z.B. die Zeichen: €, Š, š, Ž, ž, Œ, œ und Ÿ unterstützt und bei der ISO-8859-1 nicht.


Hinweis
Nicht jedes Sonderzeichen ist für jede Schriftart verfügbar und kann korrekt dargestellt werden.
Dies liegt nicht zwingend an einem falschen Zeichensatz.


Datenbank richtig nach UTF-8 konfigurieren

Beim Aufruf und Öffnen einer Datenbank muss der Zeichensatz auch immer definiert werden.

Datenbank Zeichensatz Definition
mysql_query("SET NAMES 'utf8'", $sql_connection);

Unbedingt schon beim Erstellen einer neuen Datenbank den richtigen Datensatz definieren (empfohlen UTF-8).

HTML Zeichen uncodiert auf Website anzeigen

Nicht immer aber soll die Zeichencodierung auch in das Zeichen umgewandelt werden. Vor allem für Tutorials soll der HTML-Namen oder der Unicode in der ausführlichen Schreibweise dargestellt werden z.B. ein erzwungenes Leerzeichen mit " ".
Mehr dazu in diesem Tutorial: »HTML Zeichen uncodiert auf Website anzeigen



Kommentare
Hier können sowohl Fragen wie auch ein Feedback zum oben stehenden Artikel eingetragen werden.


*Name:


*Kommentar:

(max. 500 Zeichen)

Terms:


*Pflichtfeld

Hinweis:
Der Eintrag wird nach einer redaktionellen Prüfung in den kommenden Tagen freigeschalten.

Top Themen

Suche
DoubleTwist
doubletwist iTunes mit Android Handy synchronisieren
Feedback
feedback
Anzeige
Spenden
ROG Innovation unterstützen