bussi: Komisches Problem mit Sonderzeichen

Hallo zusammen.

Ich habe ein komisches Problem bei der Darstellung von Sonderzeichen, welches ich nicht nachvollziehen kann.

Folgendes:

Wenn ich meine Homepage direkt über die Domain und ohne weitere Dateiangabe ansurfe, stellt mir mein Firefox 2.0.0.3 sämtliche Sonderzeichen als Fragezeichen dar. => http://www.fs-design.net

Wenn ich aber an die Domain noch ein index.php ranhänge, also quasi genau die gleiche Seite aufrufe, werden alle Sonderzeichen korrekt dargestellt. => http://www.fs-design.net/index.php

Ich habe es testweise auch mal mit dem IE6 ausprobiert und dem ist es egal, wie ich die Seite ansurfe. Er zeigt mir immer alles korrekt an.

Bei anderen Seiten kann ich das Problem nicht erkennen.

Liegt es:

  • an meiner Homepage und einem fehlenden Eintrag?
  • an dem Browser?
  • an meinem Provider, dass er da beim Direkt-Aufruf ohne Seitenangabe etwas anders interpretiert?

Danke für mögliche Tipps.

Gruß

Bussi

  1. Hallo Bussi,

    ich würde denken es liegt an der fehlenden Angabe des Document_Type.

    Gruß Rainer

    1. Hi!

      ich würde denken es liegt an der fehlenden Angabe des Document_Type.

      Nein. Daran liegt es sicher nicht.
      Der Martin hat das Problem schon richtig erkannt.
      Es kann nur an der Zeichenkodierung liegen (HTTP-Header, Angabe im Meta-Tag, Einstellung im Firefox).

      Schöner Gruß,
      rob

  2. Hallo,

    Wenn ich meine Homepage direkt über die Domain und ohne weitere Dateiangabe ansurfe, stellt mir mein Firefox 2.0.0.3 sämtliche Sonderzeichen als Fragezeichen dar. => http://www.fs-design.net

    Wenn ich aber an die Domain noch ein index.php ranhänge, also quasi genau die gleiche Seite aufrufe, werden alle Sonderzeichen korrekt dargestellt. => http://www.fs-design.net/index.php

    das kann ich *nicht ganz* nachvollziehen, mein FF stellt mir die Seite in beiden Varianten mit korrekten Umlauten dar.

    Liegt es:

    • an meiner Homepage und einem fehlenden Eintrag?
    • an dem Browser?
    • an meinem Provider, dass er da beim Direkt-Aufruf ohne Seitenangabe etwas anders interpretiert?

    Es liegt grundsätzlich an einer Kombination aus allen drei Punkten.

    Problem Nummer 1: Dein Server sendet im Content-Type-Header keine Angabe zur Zeichencodierung. Folglich gilt ersatzweise die Angabe *im* Dokument.

    Problem Nummer 2: Das Dokument enthält seinerseits im Quelltext auch keine Angabe zur Zeichencodierung. Folglich darf der Browser nach eigenem Ermessen raten.

    Problem Nummer 3: Dein Firefox nimmt, wenn er raten darf, anscheinend bevorzugt UTF-8, dein Dokument ist aber in ISO-8859-x codiert. Darin kommen Bytewerte vor (nämlich sämtliche Umlaute und Sonderzeichen), die in UTF-8 keine gültigen Zeichen darstellen. Der FF zeigt die als Fragezeichen an.

    Bei mir ist der FF auf ISO-8859-1 als bevorzugte Codierung eingestellt, das stimmt zufällig mit deinem Dokument überein. Deshalb ist die Anzeige bei mir korrekt.

    Warum die Anzeige bei dir unterschiedlich ist, wenn du einmal / und einmal /index.php abrufst, ist mir jedoch schleierhaft. Denn der Server sendet beidesmal identische Header.

    So long,
     Martin

    --
    Niemand ist überflüssig: Er kann immer noch als schlechtes Beispiel dienen.
  3. Würdest du mal einen Validator benutzen, dann wärst du selbst auf das Problem gestoßen.
    http://validator.w3.org/check?uri=http%3A%2F%2Fwww.fs-design.net

    1. Würdest du mal einen Validator benutzen, dann wärst du selbst auf das Problem gestoßen.
      http://validator.w3.org/check?uri=http%3A%2F%2Fwww.fs-design.net

      So, es geht wieder.

      Problem ist gelöst. Danke an Eure Tipps.

      Ich hatte zwar eine meta-Angabe zum Charset in der Seite, doch die war fehlerhaft.

      "Irgendwann" früher befanden sich die HTML-Befehle der Seite noch in einem PHP-Bereich eingebettet. Und da hatte ich dann die Anführungszeichen mit entsprechenden Backslashes versehen, damit sie im PHP-Code wieder richtig interpretiert werden.

      Doch bei einem Umbau habe ich dann wohl irgendwann mal den Header-Teil aus dem PHP-Code rausgenommen. So dass die Backslashes den HTML-Teil dann vermurkst haben.

      Aber wie schon gesagt, ein bissel komisch ist es schon, dass mein Browser die Seite richtig erkannt hat, wenn man die Seite direkt angesurft hat.

      Daher ist mir das damals beim Umbau nicht direkt aufgefallen. Sondern erst später, so dass ich dann nicht mehr wusste, seit wann oder warum das kaputt ist.

      Egal, nun funzt es wieder.

      Und den Validator werde ich auch mal benutzen. Sicherlich ratsam, geb ich zu.

      Danke nochmal und schönes Wochenende. :)

      Bussi