• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Probleme mit der Kollation

Hallo!

Ich muss die Kollation in den Tabellen meiner Datenbank verändern, da die Umlaute auf dem lokalen Server als Fragezeichen in einer Raute dargestellt werden, auf dem Webserver ist zwar die Darstellung der Zeichen optisch zunächst richtig, aber bei der Weitergabe des Links zu einem eingebetteten Frame mit Google Maps erscheinen wieder die Fragezeichen (und demenstprechend keine Route).

Ich habe also einen Export der Datenbank gemacht und in der Textdatei angegeben, dass die Tabellen beim Import das Format utf8 haben sollen. Auf einem meiner Rechner lokal hat es sofort funktioniert - Die Umlaute erscheinen zwar immer noch als Fragezeichen, werden sie aber durch die Umlaute nochmals überschrieben und neu gespeichert, erscheinen dann korrekte Umlaute und auch die Weitergabe an Google Maps funktioniert super.

Lösche ich die entsprechende Datenbank auf dem anderen meiner Rechner und versuche es hier lokal zu wiederholen, bleibt der Erfolg aus - Rauten bleiben Rauten! Die Datenbank selbst hat die gleiche Kodierung / Kollation, die Software ist selbstverständlich identisch.

Lade ich die neue Version der Datenbank auf den Webserver, ändert sich auch hier nichts. Umlaute erscheinen nach wie vor als Umlaute, nach der Weitergabe an das Google-Maps Fenster werden sie jedoch dort zu Fragezeichen, damit Funktioniert auch die Bildung der Route nicht mehr.

Wenn die Software und die Datenbanken aber scheinbar identisch sind.... Woran liegt es?
 
Werbung:
Ja, so ist es! Wobei das Problem mit dem Link zu Google Maps sich mit utf8_encode lösen liess.

Die Frage die im Raum stehen bleibt idt trotzdem, was ich auf unterschiedlichen Servern abgesehen von gleichen Zeichensätzen der Spalten, Tabellen und der DB noch einstellen muss, damit sich die Server gleich verhalten.

Im Moment läuft die Webversion perfekt und lokal habe ich bach wie vor Fragezeichen statt Umlauten. Damit lässt es sich leben, trotzdem frage ich mich, warum es so ist.
 
Werbung:
Du musst auch den HTTP-Header mit einem entsprechenden Content-type versehen.

Unabhängig davon kann eine Ursache aber auch JavaScript selbst sein. Wenn man encodeURIComponent() verwendet, wird ein String auch im richtigen Zeichensatz übergeben.
 
Zurück
Oben