Autor | Zpráva | ||
---|---|---|---|
Dr.No Profil * |
#1 · Zasláno: 21. 5. 2008, 11:05:35
Přečetl jsem si několik příspěvku tady ve foru o dobe trvani session, presto jsem nenalezl odpoved.
Pokud se uspesne prihlasi uzivatel, tak jeho session ulozim do tabulky. Na kazde strance potom kontroluji aktualni session_id() s hodnotou ulozenou v tabulce a tedy testuji zda je uzivatel stale prihlasen. Potrebuji ale omezit dobu platnosti session tak na 10min. Vim, ze se tato hodnota nastavuje nekde v php.ini. Ale zajima me, jestli se po uplynuti teto doby session_id() ZMENI AUTOMATICKY?(to znamena ze skript automaticky pozna neplatne session) Nebo jestli jeste musim v kazdem skriptu testovat dobu trvani? Diky za radu |
||
Taps Profil |
#2 · Zasláno: 21. 5. 2008, 11:39:15
Dr.No
session.gc_maxlifetime = 1440 |
||
Dr.No Profil * |
#3 · Zasláno: 21. 5. 2008, 13:13:22
Tomu nerozumim, tak se zeptam jinak:
v php.ini je nastaveno: session.cache_expire 180 session.gc_maxlifetime 1440 Toto je skript (session.php), ktery se includuje do kazde stranky: <?php @$vysledek = MySQL_Query("SELECT session FROM users WHERE login LIKE '$login'") or die("Špatný dotaz: " . mysql_error()); if (MySQL_Num_Rows($vysledek) > 0){ $zaznam = MySQL_Fetch_Array($vysledek); $session = $zaznam["session"]; if (session_id()==$session){ $prihlasen = "true"; }else{ $prihlasen = "false"; } }else{ //V pripade, ze nenajde login v tabulce users $prihlasen = "false"; } Kdyz vyprsi 180s (nevim co presne ty hodnoty znamenaji), zmeni se session_id()? (tzn. vyhodnoti se podminka session_id()==$session jako nepravda?) ?> Diky moc |
||
Taps Profil |
#4 · Zasláno: 21. 5. 2008, 13:39:59
|
||
Dr.No Profil * |
#5 · Zasláno: 21. 5. 2008, 16:41:23
Přečetl jsem si všechny články, dověděl jsem se, že "session.cache_expire" je doba vypršení platnosti session při neaktivitě. Ale stejně nevím to podstatné. Když uplyne ta doba, jak se vyhodnoti ten muj skript? Bude prihlasen = false?
|
||
Mastodont Profil |
#6 · Zasláno: 21. 5. 2008, 16:43:08
Dr.No
Tak si to vyzkoušej, ne? Přihlas se, nech prohlížeč hodinku otevřený a pak zkus jinou stránku. |
||
Časová prodleva: 16 let
|
0