topgeschenkewelt
Themenersteller
Fortgeschrittener (50 Beiträge)

Zeichen-Kodierung (Seite 2)


topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 03.03.2013, 19:18 Uhr schrieb topgeschenkewelt

Hallo,
vielen Dank.
Ich habe es nun gelöst. Keine Fehler mehr.





topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 06.03.2013, 17:56 Uhr schrieb topgeschenkewelt

Der Validator zeigt keine Fehler an.

Habe aber nun festgestellt, dass teilweise in Texten noch Umlaute vorkommen, wo, das ü,ä oder ö als schwarze Raute mit Fragezeichen vorkommt.

Ich habe dazu auch schon gegoogelt und gelesen, dass eine Raute m. Fragezeichen ein ISO Zeichen in einer UTF Seite ist.

Bei der Datenbank steht: MySQL-Zeichensatz: UTF-8 Unicode (utf8)
Tabellen habe ich auch geprüft: utf8_general_ci

Ich hatte davor ja den SHOP auf ISO8859-1

Woran kann es liegen, dass hier diese komischen Rauten mit Fragezeichen auftauchen?





joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 06.03.2013, 22:19 Uhr schrieb joerg

Hallo

Eine der Möglichkeiten die mir einfällt ist das die Seite als Iso Kodiert noch gesendet wird.

Content-Type: text/html

Da fehlt noch die Charset Angabe im Header.

<?php
header(\'Content-Type: text/html; charset=UTF-8\');
?>


sollte dann für Abhilfe sorgen.

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 06.03.2013, 22:37 Uhr schrieb topgeschenkewelt

Danke für die Antwort.

validator.w3.org/i18n-checker/check+



Nur daran lag es nicht. Ich habe jetzt soeben festgestellt,
dass wenn der Browser UTF-8 kodiert ist, dann zeigt er auch diese Fragezeichen an, stelle ich es auf Westeuropäisch um, dann sind die weg.

Dürfte aber wohl auch nicht so sein, oder?

Ich habe dies in meinem Header stehen:



Dennoch habe ich das Problem mit den Umlauten, zwar nicht auf der Startseite, aber im Adminbereich bei einigen Modulen und wenn man was bestellen will und ist auf der Seite mit den Zahlarten, dann steht dort bei Überweisung, am Anfang anstatt des "Ü" auch so eine schwarze Raute mit nem Fragezeichen.

Ich verzweifel langsam, woran es liegt.

Wäre schön, wenn dazu jemand ne Idee hätte.





topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 07.03.2013, 16:04 Uhr schrieb topgeschenkewelt

topgeschenkewelt schrieb:

Danke für die Antwort.

validator.w3.org/i18n-checker/check+



Nur daran lag es nicht. Ich habe jetzt soeben festgestellt,
dass wenn der Browser UTF-8 kodiert ist, dann zeigt er auch diese Fragezeichen an, stelle ich es auf Westeuropäisch um, dann sind die weg.

Dürfte aber wohl auch nicht so sein, oder?

Ich habe dies in meinem Header stehen:



Dennoch habe ich das Problem mit den Umlauten, zwar nicht auf der Startseite, aber im Adminbereich bei einigen Modulen und wenn man was bestellen will und ist auf der Seite mit den Zahlarten, dann steht dort bei Überweisung, am Anfang anstatt des "Ü" auch so eine schwarze Raute mit nem Fragezeichen.

Ich verzweifel langsam, woran es liegt.

Wäre schön, wenn dazu jemand ne Idee hätte.



So habe das Problem nun doch gelöst und zwar indem ich das Modul entsprechend angepasst habe, dort stand im entsprechenden Text bei Überweisung am Anfang mit "Ü" geschrieben, das habe ich dann geändert in "Überweisung.

So habe ich das bei sämtlichen Modulen den Text geändert und nun wird alles korrekt angezeigt.





joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 07.03.2013, 19:29 Uhr schrieb joerg

topgeschenkewelt schrieb:

validator.w3.org/i18n-checker/check+




No encoding information found

Und das ist hier der entscheidene Satz das die Seite als ISO gesendet wird.

So mal zum Vergleich

validator.w3.org/i18n-checker/check+



topgeschenkewelt schrieb:

Nur daran lag es nicht. Ich habe jetzt soeben festgestellt,
dass wenn der Browser UTF-8 kodiert ist, dann zeigt er auch diese Fragezeichen an, stelle ich es auf Westeuropäisch um, dann sind die weg.

Dürfte aber wohl auch nicht so sein, oder?



Doch bestätigt nur das die Seite im ISO Format gesendet wird und nicht als Unicode.

topgeschenkewelt schrieb:

Ich habe dies in meinem Header stehen:




Ich liebe diesen Irrglauben das Browser auf diese Angabe reagieren.

topgeschenkewelt schrieb:

Dennoch habe ich das Problem mit den Umlauten, zwar nicht auf der Startseite, aber im Adminbereich bei einigen Modulen und wenn man was bestellen will und ist auf der Seite mit den Zahlarten, dann steht dort bei Überweisung, am Anfang anstatt des "Ü" auch so eine schwarze Raute mit nem Fragezeichen.

Ich verzweifel langsam, woran es liegt.

Wäre schön, wenn dazu jemand ne Idee hätte.



Okay nochmal die Seitze wird nicht als UTF-8 gesendet vom Server her gesehen.

topgeschenkewelt schrieb:

So habe das Problem nun doch gelöst und zwar indem ich das Modul entsprechend angepasst habe, dort stand im entsprechenden Text bei Überweisung am Anfang mit "Ü" geschrieben, das habe ich dann geändert in "Überweisung.

So habe ich das bei sämtlichen Modulen den Text geändert und nun wird alles korrekt angezeigt.



Irrglauben ist auch ein Glaube. Sicher die Lösung funktioniert mit dem ISO Zeichensatz. Im Grunde weichst du aber nur auf Entitäten aus.

Meine Meinung dazu habe ich hier zusammengefasst. Okay vielleicht sehr spaßhaft gestaltet aber sollte es auch klarmachen.

joerghuelsermann.de/artikel/unicode/



Oder etwas kürzer und ernsthafter

floern.com/webscripting/umlautproblem


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 07.03.2013, 19:46 Uhr schrieb topgeschenkewelt

@Joerg

Danke für deine umfassende Erklärung.


Ich liebe diesen Irrglauben das Browser auf diese Angabe reagieren.


Okay nochmal die Seitze wird nicht als UTF-8 gesendet vom Server her gesehen.

Dazu habe ich auch soeben noch weitere Probleme festgestellt, nämlich, dass Produkte, die Umlaute enthalten in der Browser-Url auch falsch dargestellt werden, z.B...product_info.php?info=p580_--bertopf-Zwerg-Blumentopf.html

Also so zufrieden bin ich nun nicht.
Was kann ich tun, damit das korrekt in UTF-8 auch läuft?

Würde mich über Rückmeldung freuen.





topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 07.03.2013, 20:35 Uhr schrieb topgeschenkewelt

Möchte noch folgendes dazu ergänzen.
Bei mir steht im Server unter phpmyadmin:

a) Language: German (de-utf-8 )
b) MySQL-Zeichensatz: UTF-8 Unicode (utf8 )
c) Zeichensatz / Kollation der MySQL Verbindung: utf8_general_ci





topgeschenkewelt
Fortgeschrittener (50 Beiträge)
am 07.03.2013, 21:51 Uhr schrieb topgeschenkewelt

Ich habe eben nochmals serverseitig alles abgeklärt, an der Datenbank liegt es also nicht.
Das Problem liegt am Shopsystem von XT-Commerce. Zwar ist das hier nicht das Forum für derartige Shopsysteme, aber ich beschreibe dennoch das Problem.
Also der Seiteninhalt ist in utf-8 und auch die Datenbank ist komplett in UTF-8. Bis auf die Metatags gibt es keine Probleme, bei dem Meta title und description tauchen komische Zeichen und Entities auf. Diese werden leider nicht in utf-8 ausgegeben. Woran könnte das denn liegen?

Das sieht an folgendem Beispiel so aus:

www.topgeschenkewelt.de/product_info.php



Und wenn man dazu dann im Quelltext schaut, dann sieht man, dass das Title-Tag nicht in Ordnung ist.

Vielleicht hat ja hier trotzdem jemand eine Idee, was zu tun ist?





joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 07.03.2013, 22:01 Uhr schrieb joerg

Hallo

Warum vermutest du eine Beziehung der Url zu Unicode?

Das Problem ist da eher das in diesem Fall nicht zu

www.php.net/manual/de/function.rawurlencode.php



gegriffen worden ist und man sich da eine eigene meiner Ansicht nach unzureichende Lösung gebaut hat.

Dabei existiert zu dieser php Funktion unter Javascript ein entsprechendes Pendant mit encodeURIComponent. Und dann ist die Url nur noch Browserabhängig wie sie dargestellt wird.

Ich liebe es lieber so einfach als mir da noch was nachbauen zu müssen was eh nicht 100% das richtig abdecken kann. Ausser man haut alle Zeichen die nicht dem Ascii Zeichensatz entsprechen aus der Url raus. Aber selbst das versagt beim Leerzeichen.

Die Ergänzung über die Datenbank hilft nicht weiter an dieser Stelle, denn solange da nicht über PHP oder htaccess gesteuert wird das die Seite mit der Zeichenkodierung UTF-8 gesendet wird ist der Grund nicht beseitigt.

Ausserdem liegt da beim grobem Drüberschauen nichts im Argen.

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools



« zurück zu: HTML5 & CSS

Das Seitenreport Forum hat aktuell 5274 Themen und 36108 Beiträge.
Insgesamt sind 48356 Mitglieder registriert.