Hallo neuroleptika,
vielen Dank für Deinen Tipp. Ich habe auch mal im Netz rumgestöbert und den Unterschied zwischen UTF-8 und ISO-8859-1 gefunden. Vielleicht interesiert es dich.
"
Der Computer ist dumm: Er kennt nur Nullen und Einsen. Software, Texteingaben oder Webseiten – alles besteht aus solchen Nullen und Einsen, in langen Strömen. Nun braucht der Computer aber eine Möglichkeit, aus diesen zwei Zahlen jede Menge unterschiedlicher Zeichen zu machen, weil Menschen nicht besonders gut mit langen Strömen aus Nullen und Einsen (auch »Binärcode« genannt) umgehen können.
Es gibt also irgendein Muster in diesen Zahlenreihen, das dem Computer verrät, welche Abschnitte beispielsweise für ein
A stehen, welche für ein
B und so weiter. Dieses Verstecken »komplexer« Zeichen in Nullen und Einsen nennt man »Zeichenkodierung«.
ISO-8859-1 ist so eine Zeichenkodierung, ebenso UTF-8 oder US-ASCII.
Jede Null und jede Eins nennt man ein »Bit«. Acht davon hintereinander nennt man ein »Byte«. In US-ASCII und ISO-8859-1 ist jedem Byte genau ein Zeichen zugeordnet, 00101001 steht da beispielsweise für ein
A.
In US-ASCII bleibt das erste Bit immer eine Null. Das ist sehr praktisch: Wenn mal ein Fehler in der Übertragung auftritt, weiß der Computer genau, wo es weitergeht, denn ein Byte beginnt immer mit einer Null. Leider kann man aber mit den übrigen 7 Stellen (2 hoch 7 oder 2 × 2 × 2 × 2 × 2 × 2 × 2) nur 128 unterschiedliche Zeichen kodieren, was ja bedrückend wenig ist.
In ISO-8859-1 oder ISO-8859-15 hat man einfach gesagt: Pfeif auf Unterbrechungen im Transfer; wir benutzen einfach die erste Stelle auch noch. Jetzt hat man also 2 hoch 8 oder 256 unterschiedliche Zeichen. Wow!
Leider sind 256 Zeichen immer noch viel zuwenig, weil viele dieser Zeichen traditionell (sprich: aus dummer Bequemlichkeit) frei bleiben müssen und einige »nur« unsichtbare Steuerzeichen sind (Zeilenumbruch zum Beispiel). Man hat versucht, das zu lösen, indem man eben ganz viele unterschiedliche Kodierungen erfunden hat, die je eine Menge unterschiedlicher Zeichen kodieren. So kann sich jeder die 256 Zeichen nehmen, die er gerade braucht.
Reichte aber trotzdem nicht. Es gibt ja Leute, die chinesischen, arabischen und deutschen Text in ein und demselben Dokument haben wollen. War ja klar.
Also hat man UTF-8 erfunden. UTF-8 ist cool: Wenn ein Byte nicht mehr ausreicht, nimmt man einfach zwei. Und wenn zwei nicht ausreichen, nimmt man drei. Und wenn drei nicht ausreichen…
Außerdem hat man ein Schema eingebaut, mit dem man UTF-8 validieren kann. Wenn eine Reihe von Bits nicht zu UTF-8 gehören können, kann man das ganz einfach automatisch feststellen.
Wenn du jetzt ein Dokument in UTF-8 kodieren willst, dann mußt du also erstens das Dokument auch tatsächlich in UTF-8 kodieren. Klingt blödsinnig, wird aber oft falsch gemacht. Du mußt deinem Editor nämlich sagen: Bitte speichere das jetzt als UTF-8 ab! Sonst nimmt der irgendwas anderes, meistens
WINDOWS-1252, eine Obermenge von ISO-8859-1, nur ohne die dämlichen Leerstellen.
Such dir also einen Editor, der UTF-8 kann. TextPad oder PSPad beispielsweise.
Zweitens mußt du dem empfangenden Browser sagen, daß du UTF-8 verwendest (auch wenn du eine andere Kodierung verwendest, mußt du die mitteilen). Das geht im Webserver Apache
mittels .htaccess. In diesem Server ist oft ISO-8859-1 voreingestellt. Dämlich, ist aber eben so. Also überschreib das.
"
Eas ich noch nicht genaz verstehe, was die Mataangaben im header bewirken
"<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1" />"
@Efchen,
ich baue auch zusätzlich ein Textmail für User, die lieber Textmail haben möchten. Dies können Sie sich dann aussuchen. Ich hoffe du glaubst mir, wenn ich dir sage, dass nicht mal 1% diese Alternative wählen
Gruß
Jockl