| Autor | Zpráva | ||
|---|---|---|---|
| blizzy_ Profil * |
#1 · Zasláno: 22. 8. 2008, 21:09:15
Dobrý den,
mám v php udělané přihlášení přes SESSION, po ověření uživatelského jména a hesla se zaregistruje proměnná "prihlasen" do session a nastaví se jí hodnota. Poté už jen kontroluji její hodnotu a zpřístupním další obsah jen pro přihlášené. Po odhlášení provedu destroy a session data se ztratí. Na localhostu vše funguje, ovšem na serveru Forpsi se hodnota session nepřenáší. Uloží se a na další stránce už nemá svou hodnotu. Zajímavé ovšem je, že proměnná stále zůstává registrovaná (podle funkce isset nebo session_register). Na všech stránkách samozřejmě mám session_start úplně na začátku. Funkce session_get_cookie_params, session_cache_expire, session_cache_limiter mi vrací na localhostu i na serveru stejné hodnoty (pokud je to pro tento problém podstatné). Díky za pomoc. |
||
| Venca V Profil |
#2 · Zasláno: 22. 8. 2008, 21:36:51
To vypadá, že se ti ta proměnná nějak přetypovala:-) Zkus si vypsat její obsah, pak si zkontroluj skripty, kde se to mohlo stát...
|
||
| blizzy_ Profil * |
#3 · Zasláno: 22. 8. 2008, 21:51:56
Zkouším si vypsat její obsah a nevypíše vůbec nic, funkce is_null vrací false a empty vrací true.
Naplňuji ji tímto způsobem: session_register("prihlasen"); $_SESSION["prihlasen"]=1; Pokud si nechám hodnotu vypsat hned po přiřazení, je vše pořádku, problém nastává až na další stránce. Dále jediné rozdíly mezi localhostem a Forpsi podle funkce ini_get, týkající se SESSION jsou následující: session.bug_compat_42: localhost 0, forpsi 1 session.gc_divisor: localhost 1000, forpsi 100 session.hash_bits_per_character: localhost 5, forpsi 4 |
||
| Leo Profil |
#4 · Zasláno: 22. 8. 2008, 22:12:25
session_register("prihlasen");
$_SESSION["prihlasen"]=1; session_register je stary zpusob, dnes zbytecny, Leo |
||
| Mastodont Profil |
#5 · Zasláno: 23. 8. 2008, 07:38:40
blizzy_
V nápovědě k funkci session_registered máš jasně napsáno: If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered(), and session_unregister(). Tyhle dva způsoby se prostě míchat nesmí. |
||
| blizzy_ Profil * |
#6 · Zasláno: 23. 8. 2008, 10:21:19
Díky moc, takto už to funguje jak na localhostu, tak na serveru. Příště budu věnovat větší pozornost PHP dokumentaci.
|
||
|
Časová prodleva: 17 let
|
|||
0