steve_M: AJAX probleme mit dem Content-Type

Hi ich habe folgendes problem:

ich setze ein Request ab. Nun bekomme ich alle ß als ? zurück geliefert.
meine Frage ist nun, wie änder ich den Content-Type?

Das Script (sehr nett übrings):

<script type="text/javascript" language="javascript">
    var http_request = false;
    function macheRequest(url,IdUbergabe) {
        http_request = false;

if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // zu dieser Zeile siehe weiter unten
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

if (!http_request) {
            alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
            return false;
        }
        Id_Ubergabe = IdUbergabe;
        http_request.onreadystatechange = function() {
         if (http_request.readyState == 4) {
              if (http_request.status == 200) {
                  document.getElementById(Id_Ubergabe).innerHTML = http_request.responseText;
              } else {
                  alert('Bei dem Request ist ein Problem aufgetreten.');
              }

}

}

http_request.open('GET', url, true);
        http_request.send(null);

}
</script>

  1. echo $begrüßung;

    ich setze ein Request ab. Nun bekomme ich alle ß als ? zurück geliefert.

    Das deutet darauf hin, dass der Server ISO 8859-1 liefert, AJAX aber UTF-8 erwartet.

    echo "$verabschiedung $name";

    1. echo $begrüßung;

      ich setze ein Request ab. Nun bekomme ich alle ß als ? zurück geliefert.

      Das deutet darauf hin, dass der Server ISO 8859-1 liefert, AJAX aber UTF-8 erwartet.

      echo "$verabschiedung $name";

      Okay, du warst schneller ;)

      Du solltest die Dateien die per Link eingeladen werden (die Dateien deren Name an die JS Funktion mit URL übergeben wird) ein Header setzen.

      z.B.
      header('Content-Type: text/html; charset=iso-8859-1');

      1. echo $begrüßung;

        ich setze ein Request ab. Nun bekomme ich alle ß als ? zurück geliefert.

        Das deutet darauf hin, dass der Server ISO 8859-1 liefert, AJAX aber UTF-8 erwartet.

        echo "$verabschiedung $name";

        Okay, du warst schneller ;)

        Du solltest die Dateien die per Link eingeladen werden (die Dateien deren Name an die JS Funktion mit URL übergeben wird) ein Header setzen.

        z.B.
        header('Content-Type: text/html; charset=iso-8859-1');

        Okay es muss im Script ersetzt werden:
        Aus...
        http_request.overrideMimeType('text/html')
        wird...
        http_request.overrideMimeType('text/html;charset=iso-8859-1')