Probleme mit dem IE bei einer Weiterleitung bzw. bei Session

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme mit dem IE bei einer Weiterleitung bzw. bei Session

    Hallo Zusammen,
    ich habe ein Problem mit dem Internet Explorer bei einer Weiterleitung bzw bei Session. Ich habe zwei Formulare auf zwei Seiten. Auf beiden wird zuvor eine Session gestartet. Das sieht dann so aus:
    PHP-Code:
    <?php

    session_start
    ();
     
    $_SESSION['login']= $_POST['login'];
     
    $_SESSION['pass1']= $_POST['pass1'];
     
    $_SESSION['pass2']= $_POST['pass2'];
     
    $_SESSION['vorname']= $_POST['vorname'];
     
    $_SESSION['nachname']= $_POST['nachname'];
     
    $_SESSION['geschlecht']= $_POST['geschlecht'];
     
    $_SESSION['geschlecht2']= $_POST['geschlecht2'];
     
    $_SESSION['geburtsdatum']= $timestamp;
     
    $_SESSION['strasse']= $_POST['strasse'];
     
    $_SESSION['nummer']= $_POST['nummer'];
     
    $_SESSION['land']= $_POST['land'];
     
    $_SESSION['plz']= $_POST['plz'];
     
    $_SESSION['ort']= $_POST['ort'];
     
    $_SESSION['email']= $_POST['email'];
     
    $_SESSION['gruppe'][0] = $_POST['gruppe'][0];
     
    $_SESSION['gruppe'][1] = $_POST['gruppe'][1];

     
     
    print_r($_POST);
     
    print_r($_SESSION);
     
    setlocale(LC_ALL'DEU');
      
    $allesok false
    if(isset(
    $_POST['ueberpruefung'])) 
      {  
        
    $allesok true;
      
       include(
    './pruefung.php');
      
    check($allesok,$error,$error2);
    }
     
    // Hier wird die IF-Bedingung von ganz oben geschlossen.
      

     
      
    if($allesok){
         echo  
    '<meta http-equiv="refresh" content="2;URL=kalender.php">'
        

        

      
      }

      
    // Ist der Wert 1 nicht vorhanden, zeige das Formular.
      
    else
      {
     

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"/>
    <title>Dreispaltiges Layout mit Kopf- und Fußzeile</title>

    <link rel="stylesheet" href='css/formular_box.css' type="text/css" type='text/opera;charset=utf-8'>
    </head>
    <body>

    <h1>CSS-basierte Layouts</h1>

    <form action="kalender2.php?SID=<?php echo session_id(); ?> " method="post" >

    ...
    </form>
    Wenn der User im das Formular 1 korrekt ausgefühlt hat wird er zum Formular 2 weitergeleitet.
    So beim Firefox ist alles ok. Bloß der IE macht Probleme.
    Zum einen ist beim IE nach der Weiterleitung in der Adressenleiste im Browser nur die Adresse zu sehen ohne PHPSESSID der Firefox zeigt die an! Und zum anderen gibt beim IE PHP folgende Warnung aus:
    Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
    Was soll das? Wie man oben im Quellcode sieht benutzte ich kein session_register() und register_globals ist bei meinem lokalalen Server auf off. Auf dem Firefox gibt PHP keine Warnung heraus!!
    So woran könnte das liegen? Wie bekomme ich diese Warnung weg?
    Über Tipps bzw. Hilfe würde ich mich sehr freuen.

    Gruß enger-spüenger

  • #2
    You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively
    In der php.ini nach session.bug_compat_42 suchen
    gruss Chris

    [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

    Kommentar


    • #3
      Hallo hhcm erst einmal danke für den Hinweis. Ich habe die Stelle in php.ini gefunden:
      PHP 4.2 and less have an undocumented feature/bug that allows you to
      ; to initialize a session variable in the global scope, albeit register_globals
      ; is disabled. PHP 4.3 and later will warn you, if this feature is used.
      ; You can disable the feature and the warning separately. At this time,
      ; the warning is only displayed, if bug_compat_42 is enabled.

      session.bug_compat_42 = 1
      session.bug_compat_warn = 1
      Ich habe jetzt versucht session.bug_compat_42 = 0 zu setzen blieb aber ohne Erfolg. Es wird trotzdem die selbe Warung angzeigt.
      Achja ich habe XAMPP für Windows Version 1.5.1.
      Was muß ich denn jetzt machen?

      Gruß enger-spenger

      Kommentar


      • #4
        Original geschrieben von enger-spenger
        Was muß ich denn jetzt machen?
        Mal vollständig Lesen - und nicht immer nur die verflixte Hälfte ...!

        Es waren zwei Einstellungen genannt.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Tschuldigung hatte vorhin vergessen, daß es auch mit session.bug_compat_42 = 0
          session.bug_compat_warn = 1 und umgekehrt getestest habe - ohne Erfolg.
          Dachte das Versteht sich von selbst.

          Gruß
          enger-spenger

          Kommentar


          • #6
            Webserver neu gestartet ?
            gruss Chris

            [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

            Kommentar


            • #7
              Da habe ich auch schon versucht bleibt aber alles beim alten. In der Zwischenzeit ist mir etwas komisches aufgefallen. Ich kenne mich zwar eigentlich nicht aus in dieser ini-Datei- aber wenn ich etwas ändere müßte das doch sichtbar werden, wenn man phpinfo aufruft, richtig? Wenn ja dann habe ich eine wichtige Beobachtung mitzuteilen:
              angenommen ich ändere session.bug_compat_42 = 1 auf session.bug_compat_42 = 0 so müßte das auf beim Aufruf von phpinfo sichtbar werden tut es aber nicht er zeigt mir auch jetzt wenn ich den Wert geändert habe( auch nach restart des Servers) session.bug_compat_42 auf On ist.
              Was soll ich denn bloß machen?
              Gruß
              enger-spenger

              Kommentar


              • #8
                Original geschrieben von enger-spenger
                Was soll ich denn bloß machen?
                Die richtige php.ini ändern ...!

                Welche das ist, zeigt dir phpinfo() ziemlich weit oben an.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Und den Server restarten nicht vergessen, bevor du dich dämlich suchst.
                  gruss Chris

                  [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                  Kommentar


                  • #10
                    Super tausentent Dank! Hat geklappt. Warnung weg!
                    Eine frage hätte ich noch, muß ich was für meine spätere Programmierung beachten weil session.bug_compat_42=0 gesetzt habe?

                    Gruß enger-spenger

                    Kommentar


                    • #11
                      PHP versions 4.2.3 and lower have an undocumented feature/bug that allows you to initialize a session variable in the global scope, albeit register_globals is disabled. PHP 4.3.0 and later will warn you, if this feature is used, and if session.bug_compat_warn is also enabled. This feature/bug can be disabled by disabling this directive.
                      Auszug von php.net
                      gruss Chris

                      [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                      Kommentar

                      Lädt...
                      X