Session-Ablauf ?

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

  • Session-Ablauf ?

    Hallo,

    folgendes Problem (in Doku etc. habe ich natürlich zuerst geschaut und noch nichts gefunden):
    Ich speichere für mein Forum diverse Dinge in sessions ab.
    Die Prozeduren hierfür sind ok. Nur nach einer Zeit sind diese
    Daten nicht mehr in der Session verfügbar, den folgende IF
    Bedingung wird dann ausgeführt:

    PHP-Code:
    $username=$_SESSION["username"];
    $password=$_SESSION["password"];
    $sesstime=$_SESSION["sesstime"];
    $forum=$_SESSION["forum"];


        If (empty (
    $username) || empty ($password) || empty ($sesstime))
            {
            
    javaalert("You are not logged on correctly. Please log on!");
            
    javaredir($exiturl);
            } 
    Eine Zeitlang geht es, dann wird der User unsanft hinausbeförert. Dieser Check soll natürlich unerlaubten Zugriff verhindern.
    Provider is 1und1. Kann es sein, das die den Session-Timeout so niedrig haben oder mache ich was falsch?

    Danke,
    Stefan
    Gruss,
    Stefan

  • #2
    machst du dir ein script mit phpinfo() und guckst unter session max lifetime. evtl. auch ohne max ... aber mit lifetime
    aja, und drauf achten, dass die session id immer brav übermittelt wird url oder cookie. und natürlich immer session_start() ausführen.
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      solange du regelmäßig aktiv bist, bleibt die session auch aktiv. kann höchstens sein, dass du inaktiv bist und deshalb gefeuert wirst. das ist verständlich und sinn der sache.

      wie sieht denn die lifetime aus?

      Kommentar


      • #4
        Hallo,

        Danke für die Antworten.
        Hier die Werte aus phpinfo() :

        session.gc_maxlifetime = 1440
        session.cache_expire = 180
        session.use_cookies = On
        session.use_trans_sid = 1

        Ich übermittle die Session-ID an jede Seite zusätzlich noch
        manuell : ".../page.php?sid=".$sid."
        Auf den Folgeseiten dann:

        PHP-Code:
        $sid=$_REQUEST["sid"];
        session_start($sid);
        // dies deshalb, weil sonst manchmal eine neue session aufgemacht wird. 
        Ihr erwähntet die Inaktivität. D.H. wenn er der User keinen Refresh / neue Seite macht? Bei sehr langen Formulareingaben wird der User dann anscheinend "inaktiv" und php macht ne neue Session auf?
        Gruss,
        Stefan

        Kommentar


        • #5
          richtig! das hängt mit der lifetime zusammen.

          Kommentar

          Lädt...
          X