Umlaute Formatierung ist falsch

allinonemovie

Cadet 3rd Year
Registriert
Jan. 2015
Beiträge
33
Ich programmiere derzeit an einer Internetseite, jedoch gibt es ein Problem mit den Umlauten.
Alle mit PHP aus einer MySQL-Datenbank ausgelesenen Umlaute werden falsch ausgeben z.b. so "ü".
Stelle ich dann mit HTML (<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">) die UTF-8 Kodierung um, wird zwar die Ausgabe aus der Datenbank richtig angezeigt, jedoch werden dann alle anderen Umlaute auf der Seite so � dargestellt.

Wer das Problem löst bekommt einen Keks :schaf:
 
Habe ich schon gemacht, jedoch das selbe Problem...

Hier nen halben Keks *Keksgeben*
 
Dein Problem ist, dass du nicht durchgehend UTF-8 verwendest. Jedes Glied der Kette muss das richtige Encoding vorweisen, sonst kommt so ein Tinnef wie bei dir raus. Dateien, Datenbank, Ausgabe müssen übereinstimmen, teilweise gar PHP-Libs selbst (mbstring.internal_encoding bspw.).

Die Dateien selbst kannst du im Editor/der IDE umstellen, die Datenbankverbindung muss über SET NAMES 'utf8' geregelt werden (ggf. ohne, wenn die Config stimmt), die Ausgabe regelst du über den Meta-Tag. Verbleiben noch die Tabellen und Spalten einer DB, welche auch auf utf8 gesetzt werden müssen. Ggf. gleich auf utf8_mb4 setzen, denn nur das nutzt echte 4 Byte für die Kodierung.

Ach ja: Wenn in der DB jetzt Daten in ISO-8559-1(5) stehen, gehen die nicht automatisch in utf8 über, wenn du das Encoding der Spalte/Tabelle setzt. Die musst du allesamt manuell konvertieren.
 
Danke, hat geklappt, hier dein Keks: kekse.jpg
 
Zurück
Oben