Yeti: POST funktioniert im IE 5.00 immer noch nicht...

Hallo Forum!
Ich knackse immer noch am Problem vom Freitag (<./?t=89385&m=534179>) rum.
Mittlerweile habe ich folgende Eingrenzungen vornehmen können:
Das POST-Formular wird im Opera 7.52 korrekt übertragen, im IE 5.00 dagegen nicht (die Seite wird per POST aufgerufen, aber die Daten kommen nicht an). Das GET-Formular wird in beiden Browsern übertragen.
Es muss aber POST sein und es muss der IE 5.00 sein. :-(

Die Seite ist valides HTML 4.01, das CSS ist auch (bis auf IE-Hacks) valide. Das Loginformular der Seite wird auch über POST aufgerufen und funktioniert auch wie es soll.

Weitere erfolglose Versuche:

  • PHP löscht nichts aus dem Array, da selbst eine Seite mit nur <? print_r($_POST); ?> nichts ausgibt
  • enctype oder name setzen im form-Tag
  • action="index.php" anstatt action="./"
  • ein zusätzliches Textfeld einfügen, damit nicht nur hidden-Felder drin sind
  • die Seite auf einem anderen Server laufen zu lassen
  • auf den PC draufzuhauen

Irgendwelche Ideen/Tipps? Der Quellcode steht zur allgemeinen Belustigung auf http://JTIS.de/sandkasten/postproblem.html.

Der Yeti

--
Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
Und bin so klug als wie zuvor!
sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
http://community.de.selfhtml.org/fanprojekte/selfcode.htm
  1. Hallo,

    Ich knackse immer noch am Problem vom Freitag (<./?t=89385&m=534179>) rum.
    Mittlerweile habe ich folgende Eingrenzungen vornehmen können:
    Das POST-Formular wird im Opera 7.52 korrekt übertragen, im IE 5.00 dagegen nicht (die Seite wird per POST aufgerufen, aber die Daten kommen nicht an).

    Wenn ich die Seite lokal kopiere und im MSIE 5.0 aufrufe, werden die Formulardaten korrekt übertragen. Ich sehe kein Problem.

    Irgendwelche Ideen/Tipps? Der Quellcode steht zur allgemeinen Belustigung auf http://JTIS.de/sandkasten/postproblem.html.

    Wäre schön, wenn diese Testseite auch funktionieren würde.

    Mathias

    1. Hi,

      Wenn ich die Seite lokal kopiere und im MSIE 5.0 aufrufe, werden die Formulardaten korrekt übertragen. Ich sehe kein Problem.

      ich habe lokal nur den IE 5.01 SP2, aber auch bei diesem werden die Daten übertragen.

      Wäre schön, wenn diese Testseite auch funktionieren würde.

      den kann ich mich nur anschließen.

      P.S.:
      molily, hast du meine Email nicht bekommen? In Bezug auf http://forum.de.selfhtml.org/archiv/2004/9/88674/#m529108 f. habe ich dich vor ca. 2 Wochen an molily@selfhtml.org angeschrieben. Oder benötigt ihr keine Hilfe mehr?

      Gruß,
      Andreas.

      1. Hallo,

        molily, hast du meine Email nicht bekommen? In Bezug auf http://forum.de.selfhtml.org/archiv/2004/9/88674/#m529108 f. habe ich dich vor ca. 2 Wochen an molily@selfhtml.org angeschrieben. Oder benötigt ihr keine Hilfe mehr?

        Doch, ist angekommen und doch, brauchen wir noch, es handelt sich um einen einfachen Verpeiler meinerseits.

        Mathias

        1. Hi Mathias,

          es handelt sich um einen einfachen Verpeiler meinerseits.

          Okay, sowas kenne ich ;-)

          Gruß,
          Andreas.

    2. Hi,

      Wenn ich die Seite lokal kopiere und im MSIE 5.0 aufrufe, werden die Formulardaten korrekt übertragen. Ich sehe kein Problem.

      5.00? Welches OS?

      Wäre schön, wenn diese Testseite auch funktionieren würde.

      Ja, aber aufwändig. Außerdem habe ich ja nur vom Quellcode gesprochen. Die funktionierende Seite würde auch eine Datenbank im Hintergrund benötigen und einen eingerichteten Testzugang oder ich müsste alle diesbezüglichen Sachen herausfriemeln.

      Der Yeti

      --
      Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
      Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
      Und bin so klug als wie zuvor!
      sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
      http://community.de.selfhtml.org/fanprojekte/selfcode.htm
  2. Hi,

    Irgendwelche Ideen/Tipps? Der Quellcode steht zur allgemeinen Belustigung auf http://JTIS.de/sandkasten/postproblem.html.

    Das einzige, was mir auffällt, ist
    <input type="hidden" name="action" value="edit">
    Der name-Wert könnte Ärger geben, wenn man mit Javascript auf das Element zugreifen will.
    Ist document.formname.action das Element oder das gleichnamige Attribut?

    Aber da kein JS im Formular vorhanden ist, sollte das eigentlich auch egal sein...

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hi,

      Das einzige, was mir auffällt, ist
      <input type="hidden" name="action" value="edit">
      Der name-Wert könnte Ärger geben, wenn man mit Javascript auf das Element zugreifen will.
      Ist document.formname.action das Element oder das gleichnamige Attribut?

      Das ist ein guter Tipp, ich habe den Namen in "aktion" geändert und plötzlich lief es! Das Verwunderliche: Jetzt läuft es auch mit "action"???!?

      Danke! ;-)

      Aber da kein JS im Formular vorhanden ist, sollte das eigentlich auch egal sein...

      Genau. Es sei denn, der IE interpretiert das action=edit als Anweisung, das Formular per "EDIT"-Methode zu übergeben.

      Der Yeti

      --
      Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
      Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
      Und bin so klug als wie zuvor!
      sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
      http://community.de.selfhtml.org/fanprojekte/selfcode.htm
      1. Leider...

        Die Beobachtung: Ein Ändern des hidden-Feldes "action" in "aktion" brachte den gewünschten Erfolg, auch das Zurückändern in "action" war erfolgreich.
        Aber beim Schließen des Browsers, nochmaligem Einloggen und erneutem Ausprobieren klappt es mit keiner der beiden Schreibweise (wäre auch irgendwie sehr mysteriös).
        :-(

        Ich versuche mal, ein working example auf die Beine zu stellen...

        Der Yeti

        --
        Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
        Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
        Und bin so klug als wie zuvor!
        sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
        http://community.de.selfhtml.org/fanprojekte/selfcode.htm
  3. Hi,
    mittlerweile habe ich folgende Beobachtung gemacht:
    Wenn ich mein lokales Testsystem nicht über localhost aufrufe, sondern über die IP-Adresse, dann funktioniert alles wunderbar. Sehr verwunderlich... das Serverbeispiel funktioniert jetzt auch: http://JTIS.de/sandkasten/postproblem/

    Also: Nicht über localhost gehen.

    Aber eigentlich kann das doch nicht sein, oder?! Zumal es ja manchmal dann doch klappt, aber dann wieder nicht...

    Der Yeti

    --
    Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
    Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
    Und bin so klug als wie zuvor!
    sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
    http://community.de.selfhtml.org/fanprojekte/selfcode.htm
    1. Und noch ein Nachtrag...

      Es scheint wohl an der NTLM-Authentifizierung zu liegen, die lokal klappt (da Intranet-Zone), mit der (globalen) IP aber nicht. Genauso wird der Server im Beispiel in die Internetzone eingeordnet und daher muss der Benutzer sich über das Formular anmelden.

      Wie kann das sein??

      Die NTLM-Authentifizierung wird folgendermaßen vorgenommen:
      if (!$loggedin)
      {
       $ntlmfailed = false;
       $headers = apache_request_headers();

      if($headers['Authorization'] == NULL)
       {
        header("HTTP/1.0 401 Unauthorized");
        header("WWW-Authenticate: NTLM");
       };

      if (isset($headers['Authorization']))
       {
        // Benutzername aus dem NTLM-Autorisierungsstring ermitteln
        // ...

      // Zusätzliche Daten zum Benutzer ermitteln
          $user = mysql_fetch_array(db_query("SELECT uid,name FROM user WHERE name='$ntlm_login'"));
          // Zugriff leise mitloggen
          @db_query_priv("INSERT INTO zugang SET zeit='" . date("Y-m-d H:i:s") . "', user='$ntlm_login', logout=0, art='NTLM'");
          // Speicher ein paar Werte in der Session, damit diese nicht ständig erneut aus der Datenbank
          // abgefragt werden müssen.
          $_SESSION["uid"] = $user["uid"];
          $_SESSION["user"] = $user["name"];
          // Berechtigungen des Benutzers einmal abrufen und dann in der Session speichern
          $get_rights = db_query("SELECT modul,seite FROM user_access WHERE uid='{$_SESSION["uid"]}'");
          while ($right = mysql_fetch_array($get_rights))
           $_SESSION["rights"][$right["modul"]][] = $right["seite"];
         }
        }
       }
      }

      Wenn diese fehlschlägt (z.B. weil der Browser NTLM nicht unterstützt oder der IE die Weitergabe der Benutzerdaten ins Internet verweigert), wird das Loginformular angeboten.

      Wie kann ich es trotzdem schaffen, dass ich mit NTLM arbeiten kann und warum werden dann die Formulardaten vom IE mit POST nicht übergeben, aber mit GET schon?

      Der Yeti

      --
      Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
      Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
      Und bin so klug als wie zuvor!
      sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
      http://community.de.selfhtml.org/fanprojekte/selfcode.htm
    2. Hi,

      mittlerweile habe ich folgende Beobachtung gemacht:
      Wenn ich mein lokales Testsystem nicht über localhost aufrufe, sondern über die IP-Adresse, dann funktioniert alles wunderbar. Sehr verwunderlich... das Serverbeispiel funktioniert jetzt auch: http://JTIS.de/sandkasten/postproblem/
      Also: Nicht über localhost gehen.
      Aber eigentlich kann das doch nicht sein, oder?! Zumal es ja manchmal dann doch klappt, aber dann wieder nicht...

      Beim IE kann alles sein.

      Wann hast Du in dem betroffenen IE eigentlich zuletzt die temporären Internet-Dateien gelöscht?

      cu,
      Andreas

      --
      MudGuard? Siehe http://www.Mud-Guard.de/
      Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Hi,

        Beim IE kann alles sein.

        Ja, leider. :-(

        Wann hast Du in dem betroffenen IE eigentlich zuletzt die temporären Internet-Dateien gelöscht?

        Gerade eben. ;-)
        Hat aber keinen Unterschied gemacht. Nur wenn ich NTLM herausnehme, den Browser neu starte und mich neu einlogge, dann klappt es. Aber ich brauche NTLM! :-(

        Der Yeti

        --
        Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
        Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
        Und bin so klug als wie zuvor!
        sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
        http://community.de.selfhtml.org/fanprojekte/selfcode.htm