Autor | Zpráva | ||
---|---|---|---|
WMPopi Profil |
#1 · Zasláno: 16. 8. 2007, 15:31:05
Už jsem to sem včera psal, ale nahodím toto téma znovu neb mě to strašně zajímá =). Zajímal jsem se o to, proč dřív, když jsem uzavřel okno prohlížeče, se mi session soubory z adresáře /temp před očima smazaly a teď po instalaci nové verze WAMPu zůstávají.
Někdo tu říkal že se zavřením prohlížeče to nesouvisí, že je http je bezstavový protokol... mohl by mi to někdo prosím osvětlit? :-) z knížky PHP pro úplné začátečníky (Jakub mach): Parametr session.cookie_lifetime Specifikuje délku života dané session v sekundách. Implicitní nastavení má hodnotu 0, která znamená, že cookie dotyčné session má platnost, dokud není prohlížeč uzavřen. |
||
Martin Tiršel Profil |
#2 · Zasláno: 16. 8. 2007, 20:25:35
Sessions funguju tak, ze na serveri sa po vytvoreni session vytvori maly subor, ktoreho nazov tvori cislo session a do neho sa uklada serializovany obsah premennej $_SESSION, ktora je pristupna po sesstion_start().
Aby server vedel, ktory session subor ti patri, musis mu to nejako povedat, napriklad cez URL (napr. ...&PHPSESSID=...) alebo sa toto cislo ulozi ako cookie. Cookie je mala informacia ulozena v prehliadaci typu nazov=hodnota a moze mat stanovenu dobu platnosti (bud na nejake obdobie alebo pokym je otvorene okno prehliadaca). Toto cookie nastavuje php cez webserver. Pokial je session.cookie_lifetime 0, tak cookie drzi, pokial je otvorene okno, ak sa nastavi nejaky cas, tak cookie sa nastavi s platnostou podla tohto casu. Ak ubehne cas dlhsi ako session.gc_maxlifetime a zbehne garbage collection, tak cookie straca svoju moc, nakolko session subor uz je v tej chvili zmazany a musi sa vytvorit nova session. Staci takto? :) |
||
Časová prodleva: 17 let
|
0