[Variablen] Session bei der nächsten Seitenaufruf weck...

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

  • [Variablen] Session bei der nächsten Seitenaufruf weck...

    Hallo,

    hab ein paar schwierigkeiten mit den Sitzungen...

    Grobes Beispiel.
    PHP-Code:
    class Foo
    {
        var 
    $id null;

        function 
    Foo()
        {        
            
    session_name('NAME');
            
    session_start();
            
            if (isset(
    $_SESSION['id']))
            {
                
    $this->id $_SESSION['id'];
            }
        }

        function 
    setId($id)
        {
            
    $this->id = (int) $id;
            
    $_SESSION['id'] = $this->id;    
            return 
    $this->id;
        } 
    Seite 1
    PHP-Code:
    $objFoo = new Foo();
    $objFoo->setId(2);
    echo 
    $objFoo->id ' = ' $_SESSION['id']; 
    2 = 2
    Seite 2
    PHP-Code:
    $objFoo = new Foo();
    echo 
    $objFoo->id ' = ' $_SESSION['id']; 
    =
    Notice: Undefined index: id...
    Wieso ist die SESSION auf der zweiten Seiten nicht mehr vorhanden.

    Win XP Pro
    Apache 1.3.x
    PHP 4.3.4


    cheers
    Zuletzt geändert von schlimmerfinger; 04.03.2004, 16:06.
    Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
    PHP Sicherheit
    PHPUnit[1-2]
    Professionelle Softwareentwicklung mit PHP 5
    Professionelle PHP 5-Programmierung

  • #2
    sind cookies on? oder wird die sessionid per url übertragen?
    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      Original geschrieben von marc75
      sind cookies on? oder wird die sessionid per url übertragen?
      session.use_cookies ist auf eins gesetzt, also keks.

      cheers
      Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
      PHP Sicherheit
      PHPUnit[1-2]
      Professionelle Softwareentwicklung mit PHP 5
      Professionelle PHP 5-Programmierung

      Kommentar


      • #4
        und nimmt dein Browser auch cookies an?
        mfg
        marc75

        <Platz für anderes>

        Kommentar


        • #5
          Original geschrieben von marc75
          und nimmt dein Browser auch cookies an?
          ja, er nimmt sie an...

          php.ini
          Code:
          [Session]
          session.save_handler = files
          session.save_path = C:\tmp
          session.use_cookies = 1
          ; session.use_only_cookies = 1
          session.name = PHPSESSID
          session.auto_start = 0
          session.cookie_lifetime = 0
          session.cookie_path = c:\tmp\sessiondata
          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
          Zuletzt geändert von schlimmerfinger; 04.03.2004, 16:51.
          Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
          PHP Sicherheit
          PHPUnit[1-2]
          Professionelle Softwareentwicklung mit PHP 5
          Professionelle PHP 5-Programmierung

          Kommentar


          • #6
            mach mal zwei seiten:

            1.php
            PHP-Code:
            <?php
            session_start
            ();
            $_SESSION['echo'] = 'Hallo';
            echo 
            '<a href="2.php">Weiter</a>
            ?>

            2.php
            PHP-Code:
            <?
            session_start();
            echo $_SESSION['echo'];
            ?>
            Und lass das mal bitte angucken.

            Kommentar


            • #7
              Hallo,

              der Fehler war in der Session-Einstellung.
              Code:
              session.cookie_path = c:\tmp\sessiondata
              Ich hab ihn in
              Code:
              session.cookie_path = /
              korrigiert und jetzt geht es . Danke.

              cheers
              Nichts auf der Welt ist so gerecht verteilt wie der Verstand. Denn jedermann ist davon überzeugt, dass er genug davon habe – René Descartes
              PHP Sicherheit
              PHPUnit[1-2]
              Professionelle Softwareentwicklung mit PHP 5
              Professionelle PHP 5-Programmierung

              Kommentar

              Lädt...
              X