Session Fehler

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Session Fehler

    Hab mich bei einem neuem Projekt mal getraut das ganze jetzt mit Session anzugehen.
    Die anfänge Funktionieren ja auch ganz gut nur leider habe ich ein grundlegendes Problem.
    Bei jedem ersten Login wird zwar das Session Registriert jedoch bekomme ich folgende fehlermeldung:

    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
    erneuter login Funktioniert dann allerdings einwandfrei.

    Hier mal der code: (man verzeihe das chaos )
    PHP Code:
    <? session_start();

    $user= $_POST['user'];
    $pass= $_POST['pass'];
    include "./admin/connect.php";
    if ($user=="" && $pass=="") {
       die ("<tr bgcolor=#00488C><td align=center><b>Sorry, Name und Passwort müssen angegeben werden.</b></tr>");
    }
    $conn = @mysql_connect($dbhost, $dbuser, $dbpass);
    if($conn) {
       echo "";
    } else {
       die( "<tr bgcolor=#00488C><td align=center><b>MySql Verbindung funzt nicht!</b></tr>");
    }
    mysql_select_db($dbname,$conn);
    $passwort = ($pass);
    // $username = ($user);
    $sql = "SELECT userpasswd, level FROM reg_slave_user WHERE username = '".$user."'";
    $result = mysql_query($sql,$conn) or die("Fehler bei $sql");
    $holen = mysql_fetch_array($result,MYSQL_ASSOC);
    if (!$holen) {
       die ("<tr bgcolor=#00488C><td align=center><b>Sorry, aber dieser Name ist leider nicht bekannt!</b></tr>");
    }
    if ($holen["userpasswd"] <> $passwort) {
       die ("<tr bgcolor=#00488C><td align=center><b>Sorry, aber dieses Passwort passt nicht zum Usernamen!</b></tr>");
    }

    $level = $holen["level"];

    session_register('user');
    session_register('level');

    header ("./index.php");
    ?>
    <? 
    echo "$user";
    echo"$level";
    ?>
    Das ganze läuft Lokal auf einen W2K server mit XAMP Installation.

    Ach ja und noch eine kleinigkeit wieso legt das Session bei mir kein Cookie an ? (hab auch schon auf boden gesucht ist nicht runtergefallen)


    Thx: abraxas
    Den Wind kann man nicht ändern, aber die Segel richtig setzen.

  • #2
    in der fehlermeldung steht soviel über ini-einstellungen und php-version. warum postest du diese nicht direkt mit? (nicht die ganze ) Denn darauf kommt es an, wie es in der fehlermeldung steht.

    session_register() benutzt man laut manual auch nicht mehr!

    Comment


    • #3
      [Session]
      session.save_handler = files
      session.save_path = /tmp
      session.use_cookies = 1
      ; session.use_only_cookies = 1
      session.name = PHPSESSID
      session.auto_start = 0
      session.cookie_lifetime = 0
      session.cookie_path = /
      session.cookie_domain =
      session.serialize_handler = php
      session.gc_probability = 1
      session.gc_divisor = 100
      session.gc_maxlifetime = 1440
      session.bug_compat_42 = 1
      session.bug_compat_warn = 1
      session.referer_check =
      session.entropy_length = 0
      session.entropy_file =
      ;session.entropy_length = 16
      ;session.entropy_file = /dev/urandom
      session.cache_limiter = nocache
      session.cache_expire = 180
      session.use_trans_sid = 0
      url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

      Das ist der zuständige teil in der PHP.ini

      PS: schade wollte doch eigentlich die ganze ini datei posten inkl kommentaren
      Den Wind kann man nicht ändern, aber die Segel richtig setzen.

      Comment


      • #4
        haste das register nal geändert?

        Comment


        • #5
          Danke erst mal aber das Problem scheint hier wohl doch am Rechner zu liegen da wenn ich es zuhause an den Start bringe es einwandfrei Funktioniert (dabei sind es fast 2 Identische Rechner und beide mit dem selben Xampp drauf)
          Die Systemeinrichtung hat allerdings ein Kollege gemacht der natürlich im moment im Urlaub ist :-/
          Den Wind kann man nicht ändern, aber die Segel richtig setzen.

          Comment


          • #6
            You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off
            hast du das mal gemacht?
            Ich denke, also bin ich. - Einige sind trotzdem...

            Comment


            • #7
              Mach es hiermit

              PHP Code:
                   @session_start();
                   
              $_SESSION["Name"] = $name;
                   
              $_SESSION["ID"] = $ID;
                   
              $_SESSION["Nickname"] = $Nickname
              und so weiter ...
              session_register() wird wie bereits geschreiben net mehr genutzt

              Comment


              • #8
                Du kannst auch die register_globals in deiner php ini auf "on" setzen, dann dürfte session_register auch gehen.

                Die Variante mit $_SESSION[...] ist allerdings zu bevorzugen !
                Yeah !

                Comment


                • #9
                  lieber nicht auf on setzen. wie gesagt ist das mit $_SESSION besser.

                  Ich glaube aber wir wiederholen uns gegenseitig . Vorallem weil die Kernaussagen auch in der Fehlermeldung standen

                  Comment


                  • #10
                    Wenns Hilft )
                    Nun gut lassen wir das

                    Comment

                    Working...
                    X