dawson
Goto Top

html-Dateien über Editor in UTF-8 umwandeln notwendig?

Hallo,

ich hab eine absolute Anfänger-Frage, aber so was muss auch mal sein... ich mach gerade eine Webseite und teste hier mit versch. Einstellungen von utf-8 bzw. iso-8859-1.
Normalerweise gebe ich das ja nur im XHTML, Meta-Tags oder auch über PHP an.
Was ist aber, wenn ich die htm-Dateien über einen Editor (bei mir z.B. Notepad++) von ASCII in UTF-8 konvertiere?!?
Optisch tauchen dann keine Fehler mehr auf, aber welche Auswirkungen hat das Ganze?
MUSS ich denn dann alle Dateien des Projekts nun in UTF-8 konvertieren (mit Software-Hilfe) oder habe ich in meiner Programmierung eine (Denk-)Fehler?
Denn nur, wenn ich die Dateien auch konvertiere, siehts auch korrekt aus. (die Seiten sind natürlich über Meta-Tag auf utf-8 eingestellt und auch die MySQL-DB sollte in diesem Format sein)

Könnte es dann evtl. Probleme bei "ausländischen" Website-Besuchern geben bei der Darstellung der Seite?

Vielen Dank schon mal für Eure Hilfe...

Grüße
dawson

Content-Key: 124476

Url: https://administrator.de/contentid/124476

Printed on: April 20, 2024 at 00:04 o'clock

Member: Snowman25
Snowman25 Sep 08, 2009 at 14:10:32 (UTC)
Goto Top
Es gehört zum guten Ton der Webentwickler, einer Seite immer die Codierung in den <Head>-bereich zu schreiben.
Informiere dich am besten erst mal über die standards... hier
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">  
das in den Kopf-bereich der Seite und fertig
Member: dawson
dawson Sep 08, 2009 at 15:05:23 (UTC)
Goto Top
Will ja jetzt nicht undankbar klingen, aber... hab ich nicht oben schon geschrieben (mehrmals), dass ich das META-Tag bereits gesetzt habe? Hat aber herzlich wenig Auswirkung auf die Anzeige der Seite.
Erst wenn ich die Datei formatiere, siehts korrekt aus.
Member: Supermax
Supermax Sep 08, 2009 at 16:51:05 (UTC)
Goto Top
Die Zeichencodierung der Seite sollte immer der im HTTP-Header bzw. entsprechenden META-Tag angegebenen Codierung entsprechen, d.h. wenn du einen "Content-Type: text/html; charset=UTF-8" spezifizierst, sollte der HTML-Quelltext auch nur gültige UTF-8 Sequenzen enthalten, wobei 7-bit ASCII als "subset" von UTF-8 ebenfalls erlaubt ist.

Praktisch alle modernen Browser und Betriebssysteme unterstützen UTF8-Codierung, auch wenn möglicherweise der verwendete Font nicht sämtliche Codepunkte abdeckt.
Member: dawson
dawson Sep 10, 2009 at 19:49:42 (UTC)
Goto Top
Mh, ja, war mir net so bewusst. Habs jetzt alle umkonvertiert und schon klappts auch mit dem Nachbarn.
Bei manchen Dateien (z.B. der navi.php, die nur die Navigations-Liste enthält) taucht jetzt im Browser z.B. dieses Zeichen auf 
Wenn ich die entsprechenden Header und Metas setze, verschwindet zwar das bzw. die Zeichen, aber der Platz dafür wird immer noch freigehalten, d.h. die Navi ist um eine Zeile nach unten gerückt. Nicht wirklich schön.
Wenn ich die navi.php dann als "utf-8 ohne BOM" konvertiere passts wieder.
Ist das dann korrekt so? Sollte man alle Dateien dann "ohne BOM" konvertieren?
Member: Supermax
Supermax Sep 11, 2009 at 04:20:44 (UTC)
Goto Top
Der BOM (Byte Order Marker) ist eine aus 3 Bytes bestehende Sequenz, die dem verwendeten Editor mitteilt, in welchem Format und welcher Bytereihenfolge die Datei codiert ist. Unterschiedliche CPU-Architekturen verwenden nämlich unterschiedliche Bytereihenfolgen, bei manchen kommt das "höherwertige" Byte zuerst im Stream, bei anderen das "Low-Byte". Für Webseiten ist das nicht erforderlich, da die Codierung durch den Header bzw. das entsprechende META-Tag festgelegt wird. Webseiten sollten daher prinzipiell ohne BOM gespeichert werden, besonders da einige Browser (IE) sonst unter Umständen Probleme haben, den korrekten DOCTYPE zu ermitteln und die Seite damit im "Quirks"-Modus darstellen.

Mehr info: http://de.wikipedia.org/wiki/Byte_Order_Mark
Member: dawson
dawson Sep 11, 2009 at 13:23:21 (UTC)
Goto Top
Tja, man lern nie aus, gell?
Danke schon mal. Werd mir die Sachen jetzt mal näher anschauen und googlen was das Zeug hält.