Florian Stascheck: session_cache_expire tuts nicht

Hallo,

Ich habe am Anfang meines Skriptes immer session_cache_expire($x) mit einem Wert von $x im Moment bei 60 (wird in der config.php geändert, deshalb 'im Moment'), aber ich hatte eine Session, die hatte in einem verwaisten Browserfenster die ganze Nacht überlebet (mit Ruhezustand bei XP in Chrome). Der Browser kann sich während der über 6-7 Std wegen Ruhezustand nicht immer wieder neu verbunden haben, also liegt es imo am Server. Die Funktion gibt aber nicht mal eine Notice aus, ob es nicht geklappt hat oder so. Warum ist es denn jetz nicht nach 60 Minuten zu Ende die Session?

mfg, Flo

--
Developers are dying. Computers are getting trash. CEO's become forgetten. The only remaining things are ideas, lies and crises. So if you want to be immortal, first think, than stop it and go to microsoft and become later a manager at Lehman Brothers...
sh:) fo:| ch:? rl:( br:^ n4:| ie:{ mo:| va:} de:> zu:} fl:{ ss:) ls:< js:|
*Zu dem de:> Ich benutze wegen IE im moment noch tabellen, weil dieser display:table noch nicht versteht. Ich werde aber, wenn IE 6 & IE 7 < 10% mein neues CSS-Layout einspielen...
  1. Moin!

    Ich habe am Anfang meines Skriptes immer session_cache_expire($x) mit einem Wert von $x im Moment bei 60 (wird in der config.php geändert, deshalb 'im Moment'),

    Hast du denn auch session_cache_limiter() geändert? Ansonsten hat diese Einstellung den Wert "nocache", und dein cache_expire bleibt wirkungslos.

    Was erhoffst du dir überhaupt von dieser Einstellung?

    aber ich hatte eine Session, die hatte in einem verwaisten Browserfenster die ganze Nacht überlebet (mit Ruhezustand bei XP in Chrome). Der Browser kann sich während der über 6-7 Std wegen Ruhezustand nicht immer wieder neu verbunden haben, also liegt es imo am Server. Die Funktion gibt aber nicht mal eine Notice aus, ob es nicht geklappt hat oder so. Warum ist es denn jetz nicht nach 60 Minuten zu Ende die Session?

    PHP hat keine Einstellung, die Session nach exakt X Minuten garantiert zu beenden. Das musst du selbst programmieren. PHP bietet nur Einstellmöglichkeiten, mit Wahrscheinlichkeitswert zu alte Sessions eigenständig aufzuräumen - dies geschieht aber nur, wenn der Server zwischendurch andere Requests auf PHP-Skripte hereinbekommt, die ebenfalls mit Session arbeiten.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Hallo,

      Danke!! Ich finde es garnicht so schlecht, denn es gibt ja einen Ausloggen-Button :D.
      Jetzt weiß ich aber woran es liegt.

      mfg, Flo

      --
      Developers are dying. Computers are getting trash. CEO's become forgetten. The only remaining things are ideas, lies and crises. So if you want to be immortal, first think, than stop it and go to microsoft and become later a manager at Lehman Brothers...
      sh:) fo:| ch:? rl:( br:^ n4:| ie:{ mo:| va:} de:> zu:} fl:{ ss:) ls:< js:|
      *Zu dem de:> Ich benutze wegen IE im moment noch tabellen, weil dieser display:table noch nicht versteht. Ich werde aber, wenn IE 6 & IE 7 < 10% mein neues CSS-Layout einspielen...