Autor Zpráva
zacekjakub
Profil *
Ahoj,

snad mi někdo poradí, nemohu najít chybku, všude jinde mi to funguje, ale mám stránku na které startuji session session_start(); , poté není problém a normálně si vypíšu uloženou session USER, ale jakmile buď obnovím stránku nebo přejdu na jinou, session se mi ztratí. Na jiných stránkách to normálně funguje a nepředávám SID v adrese, spoléhám se na cookies.

Věděl by si někdo rady? Děkuji
AM_
Profil
1) cookies jsou vypnuté
2) jedeš přes proxy nebo podobnou záležitost, která je nepropustí
3) někde v kódu si session omylem rušíš
Zkontroluj si, jestli se ti v browseru vytvoří cookie PHPSESSID (Opera má určitě v nastavení prohlížeč všech uložených cookies, nevím, jak ostatní prohlížeče, ale měly by ho mít taky).
zacekjakub
Profil *
1) píšu že to u ostatních stránkách funguje, přeci bych si mezi omylem nevypnul cookies...
2) kdyby byl problém v proxy nebo "podobné záležitosti", myslím že by to nejelo ani u ostatních stránek do kliknutí na tu chybnou
3) to by snad bylo možné, ale kód jsem několikrát prošel a nic nevidím, ale ještě to jdu prohlédnout

PHPSESSID mám vytvořenou, opět, je to jasné když to jede na ostatních stránkách.
zacekjakub
Profil *
Mám novinku, pokud vymažu ze stránky session_start();, všechno funguje až na to že nemohu použít její hodnotu, ale jde o to že se session nezruší a mohu ji využívat na ostatních stránkách.
AM_
Profil
tak to bych tipoval chybu v kódu. Doporučuji PHP debugger - mě se osvědčil NuSphere PHPEd, ikdyž si to chce chvíli hrát s nastavením, ale existuje i vs.php - plugin pro Microsoft Visual Studio, volně stažitelný 30tidenní trial (bohužel potřebuješ alespoň standard edici VS2005 nebo VS2008), má ale snazší instalaci, než PHPEd. Je to ale božský nástroj na hledání taovýchhle chyb, prokrokuješ kód příkaz po příkazu a sleduješ při tom, kde se ti ztratí hodnoty session.
zacekjakub
Profil *
Tak díky, pokusím se to debugnout, ale nechápu pokud dále již nepracuji s proměnnými session, jak se to může ztratit, to mi nejde do hlavy. :))
zacekjakub
Profil *
Takže to mám, i když dost dobře nechápu jak se to mohlo stát, měl jsem dále proměnnou se stejným názvem kterou jsem si vytáhl z DB a jakmile jsem ji list() funkcí přiřadil, přepsala se mi má původní proměnná use, ovšem myslím že by to tak být nemělo pokud ji nepřiřadím přímo session, ne??
AM_
Profil
máš asi zapnuté register_globals. Vypni je v php.ini.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: