13.01.2007, 20:08
Hallo Leute,
ich arbeite grad an einer Mitglieder-Karte für das MyBB.
das ganze läuft größtenteils über AJAX und dabei habe ich nun das Problem, dass der IE meine XML-Rückgabe nicht mag, weil ein falsches Zeichen drin wäre (an der Stelle steht z.B. ein "ö").
Die Daten in der XML-Rückgabe kommen aus einer Datenbank, wo sie als UTF-8 gespeichert sind. Im XML-Dokument ist auch UTF-8 gesetzt.
Das seltsame dabei ist nun, dass im Browser nur dann das richtige angezeigt wird, wenn man als HTTP-Header "Content-Type: ISO-8859-1" setzt. Das funktioniert auch im Opera und Firefox ganz wunderbar. Der IE meckert nun aber und kann wegen den Sonderzeichen das Dokument nicht verarbeiten.
Ich hab nun schon verschiedene Kombinationn ausprobiert aber nur auf diese Weise bekomme ich alles richtig angezeigt (bzw. im IE gar nicht).
Wenn ich im HTTP-Header und im XML-Dokument UTF-8 eintrage, werden Sonderzeichen falsch angezeigt. Und wenn ich alles auf ISO-8859-1 stelle und die Strings mit utf8_decode() bzw. iconv() nach ISO-8859-1 wandeln will, werden die Strings immer bei SOnderzeichen abgehackt.
Ihr könnt euch das ganze hier anschauen (einloggen mit test/test):
http://osor.de/top/membermap.php
Eine Suchanfrage nach der Stadt Luckau bringt z.B. das:
...so wird es in Opera und im FF richtig verarbeitet aber im IE kommt ein Fehler.
Hat jemand eine Idee, was ich da machen könnte, damit es in allen Browsern verarbeitet werden kann?
ich arbeite grad an einer Mitglieder-Karte für das MyBB.
das ganze läuft größtenteils über AJAX und dabei habe ich nun das Problem, dass der IE meine XML-Rückgabe nicht mag, weil ein falsches Zeichen drin wäre (an der Stelle steht z.B. ein "ö").
Die Daten in der XML-Rückgabe kommen aus einer Datenbank, wo sie als UTF-8 gespeichert sind. Im XML-Dokument ist auch UTF-8 gesetzt.
Das seltsame dabei ist nun, dass im Browser nur dann das richtige angezeigt wird, wenn man als HTTP-Header "Content-Type: ISO-8859-1" setzt. Das funktioniert auch im Opera und Firefox ganz wunderbar. Der IE meckert nun aber und kann wegen den Sonderzeichen das Dokument nicht verarbeiten.
Ich hab nun schon verschiedene Kombinationn ausprobiert aber nur auf diese Weise bekomme ich alles richtig angezeigt (bzw. im IE gar nicht).
Wenn ich im HTTP-Header und im XML-Dokument UTF-8 eintrage, werden Sonderzeichen falsch angezeigt. Und wenn ich alles auf ISO-8859-1 stelle und die Strings mit utf8_decode() bzw. iconv() nach ISO-8859-1 wandeln will, werden die Strings immer bei SOnderzeichen abgehackt.
Ihr könnt euch das ganze hier anschauen (einloggen mit test/test):
http://osor.de/top/membermap.php
Eine Suchanfrage nach der Stadt Luckau bringt z.B. das:
Code:
<?xml version="1.0" encoding="utf-8"?>
<results>
<result>
<id>20412</id>
<name>Luckau</name>
<trace0>Deutschland</trace0>
<trace1>Niedersachsen</trace1>
<trace2>Landkreis Lüchow-Dannenberg</trace2>
</result>
<result>
<id>20413</id>
<name>Luckau</name>
<trace0>Deutschland</trace0>
<trace1>Brandenburg</trace1>
<trace2>Landkreis Dahme-Spreewald</trace2>
</result>
</results>
Hat jemand eine Idee, was ich da machen könnte, damit es in allen Browsern verarbeitet werden kann?