PHP cookie probléma
Van egy kis gondom.
Az index.php oldalamon idáig volt egy setcookie parancs, és ugyanazon az oldalon kicsit lejjeb kiolvasta a cookie tartalmát(HTTP_COOKIE_VARS), és attól függően folytatódott a futás. (természetesen csak a következő lekérésnél vette figyelembe a cookie-t.)
Most áttértem egy másik módszerre az egyszerűség kedvéért. Az oldal elején require-el berántok egy design.php-t (ugyanabban a könyvtárban van.), amiben függvények (function) írják ki az oldal HTML-kódjának elejét, végét. Magyarul behúzom, és utána lefuttatok egy felso() sort. Na ebbe a függvénybe került a cookie beállítása és a lekérdezése is. Viszont nem müxik.
A setcookie bellítja a cookie (ezt látom), de visszakapni nem tudja.
Mi lehet a probléma? (Esetleg a setcookie parancs domain és/vagy path argumentumaival lehetne büvészkedni.)
■ Az index.php oldalamon idáig volt egy setcookie parancs, és ugyanazon az oldalon kicsit lejjeb kiolvasta a cookie tartalmát(HTTP_COOKIE_VARS), és attól függően folytatódott a futás. (természetesen csak a következő lekérésnél vette figyelembe a cookie-t.)
Most áttértem egy másik módszerre az egyszerűség kedvéért. Az oldal elején require-el berántok egy design.php-t (ugyanabban a könyvtárban van.), amiben függvények (function) írják ki az oldal HTML-kódjának elejét, végét. Magyarul behúzom, és utána lefuttatok egy felso() sort. Na ebbe a függvénybe került a cookie beállítása és a lekérdezése is. Viszont nem müxik.
A setcookie bellítja a cookie (ezt látom), de visszakapni nem tudja.
Mi lehet a probléma? (Esetleg a setcookie parancs domain és/vagy path argumentumaival lehetne büvészkedni.)
Re: PHP cookie probléma
a megoldás az, hogy a $HTTP_COOKIE_VARS változó nem globális alapértelmezettként, tehát egy függvényből sohase fogod látni, hacsak nem teszed globális érvényűvé:
Re: PHP cookie probléma
Nálam a következő probléma merült fel a sütivel kapcsolatban.
Több helyen is használok ugyanolyan nevű cookie-t, ezért úgy gondolom a megoldás abban rejlik, hogy a setcookie paraméterek között megadom, hogy melyik domain melyik könyvtárából legyen elérhető a süti.
A beállítás így néz ki:
setcookie("cookie", $cookie, time()+(60*60*24), "/utvonal/ahol/a/php/talalhato/", "www.mydomain.hu");
A doksit töviről hegyire átolvastam.
Ennek ellenére, ha beállítom a cookie-t, akkor ugyanezen a domainen, de más könyvtárban lefutó PHP kód is eléri. :(
Rosszul adok meg vmit? Fontos, hogy a domain ugyanaz!
Vagy szerver-beállítás lenne?
Előre is kösz a segítséget!
Re: PHP cookie probléma
Re: PHP cookie probléma
setcookie("cookie", $cookie, time()+(60*60*24), "/utvonal/ahol/a/php/talalhato/", "www.mydomain.hu");
Én azt javasolnám neked, hogy debuggolj. Pl. Firefox segítségével elég jól megnézhetőek a cookie-k paraméterei, illetve van hozzá Live HTTP header kiegészítés is, amivel megnézheted, hogy milyen kommunikáció zajlott le a PHP és a böngésződ között. Ezek alapján kiderülhet, hogy melyik komponensben, hol lehet a hiba.