17. oktober 2001 - 15:52
Der er
3 kommentarer og
1 løsning
Hjælp til sessions !
<cpfrande>
Hey !
Jeg er begyndt at bruge sessions meget !
Sååå et af mine 1000-vis af spørgsmål om (PHP-)livet er:
Slettes en session når computeren er slukket eller kan den holde for altid ligesom med cookies ?
</cpfrande>
17. oktober 2001 - 16:01
#1
En session kører på serveren. Det vil sige at så snart du lukker din browser (helt ned) eller genstarter din lokale computer eller serveren forsvinder session\'en - smart til nogen ting, dumt til andre!
17. oktober 2001 - 16:55
#3
ok, mojner var først, lav det til et svar og de points er dine !
18. oktober 2001 - 09:36
#4
En session har to dele: Sessionen på serveren, og sessions-id på klienten.
Klient-delen dør (normalt), når browseren lukkes. Der er dog flere måder at omgå dette (med vilje eller ej):
Du kan manuelt sætte en cookies med sessions-id, som har en expiretime.
Du kan også risikere at sessionsid står i en url, som er gemt i url-cachen (til auto-completion), eller måske i en url, som er bookmarked.
På server-siden: Når en session har været ubrugt i en vis tid (vist 20 minutter som standard), bliver den markeret som \"garbage\", og vil blive slettet ved næste garbage-collection. Indtil det sker, vil server-delen stadig leve.
Når en ny session startes, vil der måske blive foretaget garbage-collection. Sandsynligheden for dette sættes med \"session.gc_probability\", og er som standard 1%. På en hjemme-test-server kan sessions derfor eksitere i ugevis, selv om man har sat timeout til fx. 20 minutter.
/Niels Andersen