Hallo,
als langjähriger und erfahrener Autodidakt im Bereich der Webprogrammierung stoße ich bei der Zeichenkodierung an Verständnisgrenzen. Vielleicht könnt ihr mir helfen.
Erstmal eine ganz einfache (Doppel-)Frage, auf die ich in den Archiven aber bisher keine Antwort gefunden habe.
Sind im Zeichensatz utf-8 auch alle deutschen Sonderzeichen enthalten? Und wenn ja, warum zeigt dieser Quellcode in den Standarbrowsern die Sonderzeichen nicht an, sondern zeigt ein weißes Fragezeichen in einer schwarzen Raute:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body>
Lauter Umlaute und Sonderzeichen:
ä ö ü ß é è ê
</body>
</html>
Dieser Quellcode allerdings zeigt die sonderzeichen (erwartungsgemäß) an:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body>
Lauter Umlaute und Sonderzeichen:
ä ö ü ß é è ê
</body>
</html>
PS: bei einer komplexen Datenbank-Anwendung (mysql) habe ich alle Daten im Zeichensatz utf-8 gespeichert. Die HTML-Datei sendet den Header mit dem Zeichensatz utf-8 (s.o.). Zusätzlich sende ich diesen Header auch über eine header-Anweisung in der php-Datei. Das Interessante ist, dass auch alle Sonderzeichen der Datenbank-Daten korrekt angezeigt werden. Alle im Quelltext enthaltenen Sonderzeichen jedoch werden mit einem weißem Fragezeichen in einer schwarzen Raute dargestellt. Ich möchte jetzt ungern wieder an den ganzen Quelltext und jedes Sonderzeichen in die HTML-Entsprechung (bspw. ä
) umschreiben. Gibt es da eine Chance?
LG
hbergmann