Umlaute werden nicht angezeigt

Hallo zusammen

ich betreibe eine Homepage in der ich Newsbeiträge aus einer mysql 5.0 datenbank auslese. Kodiert mit utf-8 oder so…

das problem ist, dass die umlaute wie ä udn ü usw nicht angezeigt werden und durch ? etc. ersetzt werden.

wo und wie muss ich das ändern???

wäre über schnelle hilfe sehr dankbar…

Hallo caig,

wenn Du die Seite der des FC Mühlhausen 1927 meinst, kann ich Deine Aussage nicht ganz verstehen

… Kodiert mit utf-8 oder so…

Laut Sourcecode verwendest Du

und das Ersatzzeichen „?“ zeigt aber auch eher ein anderes Problem (wenn Du utf-8 schrieben würdest, wären zwei Buchstaben mit einem führenden à zu sehen).

Also ohne mehr Informationen, kann Dir keiner helfen.

MfG Georg V.

Guten Tag,

hi georg,

genau um diese homepage handelt es sich!

also habe heute von mysql4 auf mysql5 umgestellt.
dort kann ich allerdings in der mysql datenbank als sprache german (de-utf-8),
MySQL-Zeichensatz: UTF-8 Unicode (utf8)
Zeichensatz / Kollation der MySQL-Verbindung: utf8_general_ci

das problem taucht ja auch nur bei den newseinträgen auf die ich aus der datenbank ziehe!

reichen dir die infos?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo caig,

zeichensatz ist eine eine schwierige aufgabe, da es sich um eine Kette an einstellungen handelt sie alle gleich sein müssen.

  • Die Ausgabe selbst muss UTF8 sein, das kannst du durch metatags oder vorzugsweise brutal mit der PHP funktion header() festlegen damit du auf der sicheren seite bist!

  • Die verbindung zur datenbank muss UTF8 sein! Das und andere einstellungen kann man mit

    SHOW VARIABLES LIKE ‚character_set%‘;

prüfen. Wenn du dort abweichungen findest kannst du vor einem SELECT ODER INSERT folgendes verwenden

SET NAMES utf8

das setzt alle optionen auf UTF8 (sofern ich mich erinner für ide dauer der verbindung

  • na und nicht zu letzt muss die datenbank und deren Tabellen auf UTF8 eingestellt sein

  • und zum schluss gibt es noch bei formularen eine fehlerquelle

bei all diesen Problem gibt es zwei PHP funktionen die dir helfen könnten:
utf8_decode();
utf8_encode();

Sie verwandeln ISO-… Strings in UTF8 strings und umgekehrt. Ich hoffe das hilft dir ein bisschen die fehlerquelle zu finden.

Viel erfolg!