meta tag zeichensatz bei verschiedenen sprachen?

Ich habe ein Website und habe sie übersetzen lassen!

Jetzt habe ich einige fragen:

Ersten was ist der große unterschied von iso-8859-1 und UTF-8? was benutze ich?

Ich muss ja in die Metagats die Zeichenkodierung reinschreiben:

[HTML][/HTML]

Was mach ich bei seiten die auf russisch oder thailiändisch sind?
Ich habe auf Wikipedia nachgelesen und herausgefunden das ich einfach die letzte zahl ändern muss?

ISO 8859-1

bzw muss ich auf jeder neuen seite die eine neue sprache hat, neue meta tags setzen?

ISO-8859-1 und UTF-8 sind 2 von vielen Zeichensätzen. Näheres dazu findest Du unter dem Link.

Der Zeichensatz deiner Webseite sagt den Programmieren die die Webseite anzeigen (Browser meist) welcher Zeichensatz von der Webseite verwendet wird. D.h. Du musst zunächst wissen, in welchem Zeichensatz das von dir verwendete Programm die Texte in deiner Webseite speichert. Meist kann man das auch beeinflussen/umstellen. Solltest Du eine Datenbank verwenden, sollte diese auch in einem einheitlichen und dem selben Zeichensatz arbeiten wie die Webseite.

Die Entscheidung, welcher Zeichensatz der richtige ist, ist immer dir überlassen. Bei deutschen, englischen oder spanischen Seiten kann die Entscheidung noch leicht sein. Jedoch empfiehlt es sich heutzutage immer UTF-8 als Zeichensatz zu verwenden, da dieser Zeichensatz auch russische und viele andere Sprachen ermöglicht. Ob Thailändisch dabei ist, weiß ich gerade nicht, dürfte aber der Fall sein.

Hinweis: der Zeichensatz einer Webseite die auf einem Server liegt und per http erreichbar ist, wird nicht einzig durch diesen Meta-Tag bestimmt. Der Server selbst liefert im Header auch einen Zeichensatz mit der für Browser vorrang hat. Solltest Du Probleme mit der Darstellung von Zeichen haben, prüfe erst das (z.B. bei Firefox → Rechtsklick auf Seite → Seiteneigenschaften).

Zur Größenordnung: In UTF-8 können Billionen von Zeichen (theoretisch alle) kodiert werden, in den ISO-8859-Varianten mehr oder weniger nur 256 verschiedene.

„Thai“ hat es (#26), falls das passt.

Mit diesem Tool kannst du das tatsächliche Charset einer Seite ermitteln:

Der oberste gesetzte Wert unter „Character encoding“ legt es fest.

@threadi:

Ich habe mir mal erlaubt, die drei Absätze von dir ins Wiki zu kopieren (Internationalisierung). Das ist zugegeben etwas kontextlos, aber wenn du’s schon mal so hübsch ausformulierst, können wir das auch zentral ablegen. :wink:

(Bei Missfallen, oder wenn du nicht einverstanden bist, bitte einfach löschen.)

Also UTF-8 ist sehr gut das hab ich schon verstanden, nur was heißt das für den text? Muss ich jetzt umlaute in deutsch umschreiben? in z.b &aufl…oder sowas?

bzw. angenommen ich habe die index.html in deutsch, sollte ich dan im meta schreiben ISO-8859-1 bzw wenn ich auf die thai klicke ISO-8859-26?? sollte es so funktionieren?

Weiters, muss ich meinen datein auch so abspeichern ?

Du kannst/solltest für alle beteiligten Komponenten (Datenbankfelder, Datenbankverbindung, HTTP-Charset-Headerangabe, Encoding der HTML-Dateien) ausschließlich UTF-8 verwenden. Dann kannst du sämtliche Zeichen egal in welcher Sprache in Reinschrift speichern/schreiben, eine Notwendigkeit, HTML-Entities zu nutzen, besteht nicht (also beispielsweise „ä“ statt „ä“).

Du müsstest dann in deinem Editor das Encoding auch auf UTF-8 setzen, ja.

Also ich habe keine Datenbank! Ich habe 1 index die ist auf deutsch und dan kann man die sprache ändern und kommt per link auf z.b index_thai!

Das heißt ich verwende bei allen seiten UTF-8 und speichere sie mittels Editor (eclipse) auch als utf-8 ab?

Ich werde es ausprobieren!

Ich hatte nur einmal das problem das bei dem abspeichern von utf-8 er mir alle umlaute in komische zeichen verwandelte??

Genau das ist jetzt passiert! ich habe die datei als UTF-8 umgewandelt und er hat mir die umlaute umgeschrieben!

Viel Spa� beim Lesen & Entdecken

Also ich habe jetzt eine neue datei erstellt die als utf-8 abgespeichert und danach einfach den code hineinkopiert! Jetzt Funktioniert es soweit…aber nur lokal …d.h: wenn ich die datei am server lade und über die domain aufrufe werden immer noch die zeichen angezeigt!

Wie gesagt:

Ja. Siehe Post über deinem.

Also wenn ich die seite validieren lasse sagt er mir „ISO-8859-1“ obwohl ich „utf-8“ gespeichert habe und es im meta so stehen habe! Das heißt also der Server ist schuld…

Jetzt die große frage! Kann ich das beinflussen?

PS: Vielen Dank für die Information! Es hilft wirklich weiter, finde auf google nur blödsinn =)

Es hängt von deinem Webhosting ab, ob es möglich ist oder nicht. Meist geht es schon indem man in einer .htaccess-Datei

AddCharset UTF-8 .html

rein schreibt. Siehe auch:
Einstellung der Zeichencodierungsangabe (‚charset‘) in .htaccess

Musste nur am anfang der HTML Datei eine PHP zeile schreiben! Jetzt funktionierts perfekt!

[HTML]

<?php header('Content-type: text/html; charset=utf-8'); ?>

[/HTML]