Marko: Warum ignoriert IE das Encoding von XML ?

Hallo,

ich versuche Seiten (HTML-Formulare) mit Browserseitigem XSL zu erzeugen. Das XML das mein Formular beschreibt fängt mit: <?xml version="1.0" encoding="ISO-8859-1" ?> an.
Im Mozilla funktioniert das auch, der IE stellt die Seite aber trotzdem mit UTF-8 als Encoding dar. Das eigentliche Problem sind die Werte, die vom Formular zurückkommen, vom Mozilla kommt ISO-8859-1 vom IE UTF-8, da die Werte auf einer Datenbank landen, die mit ISO Zeichensatz arbeitet, werden Sonderzeichen die vom IE kommen zu Müll.
Gibt es eine Möglichkeit dem IE zu sagen, dass er bitteschön doch ISO verwenden soll ? Die einzige Alternative die ich bisher sehe, ist vor dem abspeichern Sonderzeichen in Entities zu wandeln.

Gruss

Marko

  1. Hallo,

    Im Mozilla funktioniert das auch, der IE stellt die Seite aber trotzdem mit UTF-8 als Encoding dar. Das eigentliche Problem sind die Werte, die vom Formular zurückkommen, vom Mozilla kommt ISO-8859-1 vom IE UTF-8, da die Werte auf einer Datenbank landen, die mit ISO Zeichensatz arbeitet, werden Sonderzeichen die vom IE kommen zu Müll.

    Du kannst in deiner XSL-Sheet <xsl:output method="html" encoding="ISO-8859-1" /> verwenden, aber weder der XML- noch die XSL-Datei haben darauf Einfluß wie der Browser beim Absenden eines Forumlars Sonderzeichen übergibt.

    Grüße
    Thomas

    1. Hallo Thomas,

      vielen Dank, genau das war es. Also ich denke der IE kodiert bei der Übergabe die Zeichen in dem Zeichensatz, in dem er die Seite darstellt. Und das ist mit der Anweisung auf ISO umgestellt, der IE war immer noch auf URF-8 gestanden. Für den Mozilla hat es gereicht es im <?xml... am Anfang anzugeben. Also Dein Tip war gut.

      Gruss

      Marko