Ich ärger mich jetzt schon seit gestern mit einem Problem rum und komme nicht weiter, ich hoffe hier kann mir jemand helfen.
In meiner Testumgebung läuft das so:
MySQL 4.1.. d.h. der Server kann mit UTF-8 umgehen.
Ich lese über PHP aus einer MySQL Datenbank Inhalte für Webseiten aus (den Title und die Überschrift der Webseite). Die Seiten sind UTF-8 codiert.
Bisher dachte ich das von meiner Testatenbank auch, gerade ist mir aber aufgefallen, dass die Datenbank zwar als default charset utf8 hat, die Tabellen aber latin1 (da ich sie wohl vom richtigen Server importiert habe, auf dem noch MySQL 4.0.. läuft). Mit meinen Webseitenscript werden nun alle Umlaute und andere deutschen Zeichen (äüöß) als Fragezeichen-Symbol dargestellt.
Wenn ich mir aber die Tabellen mit PHPMyAdmin anschaue und dort UTF-8 einstelle, sieht alles gut aus. Auf meinem richtigen Webserver sieht auch mein Skript gut aus (allerdings auch nur wenn ich als Seitenkodierung UTF-8 angebe), wie kann das sein, der Inhalt ist doch in Latin1 gespeichert und die Seiten in UTF-8 kodiert?
Kann mir das jemand erklären bzw. sagen wie ich PHP konfigurieren muss, damit es auch auf meinem Testserver alles richtig angezeigt wird?
Danke für Eure Hilfe.
PS: Ich vermute, dass es ein PHP Problem ist, falls das nicht so sein sollte, bitte ins MySQL-Forum verschieben...
In meiner Testumgebung läuft das so:
MySQL 4.1.. d.h. der Server kann mit UTF-8 umgehen.
Ich lese über PHP aus einer MySQL Datenbank Inhalte für Webseiten aus (den Title und die Überschrift der Webseite). Die Seiten sind UTF-8 codiert.
Bisher dachte ich das von meiner Testatenbank auch, gerade ist mir aber aufgefallen, dass die Datenbank zwar als default charset utf8 hat, die Tabellen aber latin1 (da ich sie wohl vom richtigen Server importiert habe, auf dem noch MySQL 4.0.. läuft). Mit meinen Webseitenscript werden nun alle Umlaute und andere deutschen Zeichen (äüöß) als Fragezeichen-Symbol dargestellt.
Wenn ich mir aber die Tabellen mit PHPMyAdmin anschaue und dort UTF-8 einstelle, sieht alles gut aus. Auf meinem richtigen Webserver sieht auch mein Skript gut aus (allerdings auch nur wenn ich als Seitenkodierung UTF-8 angebe), wie kann das sein, der Inhalt ist doch in Latin1 gespeichert und die Seiten in UTF-8 kodiert?
Kann mir das jemand erklären bzw. sagen wie ich PHP konfigurieren muss, damit es auch auf meinem Testserver alles richtig angezeigt wird?
Danke für Eure Hilfe.
PS: Ich vermute, dass es ein PHP Problem ist, falls das nicht so sein sollte, bitte ins MySQL-Forum verschieben...
Kommentar