ugrás a tartalomhoz

Cookie törlése

Pisti20 · 2010. Okt. 4. (H), 13.33
Sziasztok, van egy egyszerű, de még sem egyszerű problémám.

Az oldalon amin ügyködök, a bejelentkezéskor cookie-knak adok át infót, nevezetesen :

if (($rows[username]==$username)and($rows[password]==$password)){
			setcookie("username",$rows[username],time()+3600);
			setcookie("userid",$rows[userid],time()+3600);
			setcookie("login",true,time()+3600);
}
A probléma az hogy nem tudom törölni a cookie-kat. Utána olvastam, elvileg egy sima lejárati idő multbahelyezéssel lehet őket "törölni", de nem törli a php.

setcookie("login", "", time()-3600);
Mivel kimondott törlése nincs a cookieknak, illetve mindenütt ezt a "múltba helyezést" találtam, gondoltam megkérdezlek titeket.
A böngésző a kód lefuttatása során nem ír ki hibát, és azon kívül hogy a cookiekat törölné, minden végrehajt.
 
1

Próbáltam így is

Pisti20 · 2010. Okt. 4. (H), 13.56
Megpróbáltam unsettel is, de erre sem csinál különösebben semmit, a cookiek is megmaradnak, adataikkal együtt.

AZ oldal elvileg úgy működik, hogy ha bejelentkeztél akkor a cookie vizsgálat után átenged profil oldaladra, ahol a LogOut gombra kattintva törölné a cookie-kat, és visszairányít az index.php-ra ahol olyan menüpontokat látok bejelentkezve, amiket CSAK bejelentkezve láthatok.A kattintás után az oldalt ujratölti, és hibát sem ír ki, csak a cookiek maradnak meg, így az oldal újratöltésekor még mindíg be vagyok jelentkezve(sajnos). Próbáltam sessionnal, illetve eredetileg sessionnal volt, de a sessionban valamiért nem akarta tárolni egy adatot, a useridt, minden mást tárolt. Hiba elvileg nem volt benne, hiszen csak a $_SESSION[]-okat cseréltem le $_COOKIE-kra, és már ment is.
2

Ezzel a cookie alapú mesével

kuka · 2010. Okt. 4. (H), 14.27
Ezzel a cookie alapú mesével ne is kísérletezz tovább, mert nem megoldás, hanem csak átverés. Önmagad és a felhasználóid átverése. A crackereké nem.

Sessionban tárold az állapotot, kilépéskor meg a sessiont semmisítsd meg. A cookie-t hagyd kezelje a session, vagy az enyészet.

Inkább a nemműkőkő sessionos kódot mutasd, hogy javítást javasolhassunk. Bár én a tipikus kezdő hibára gyanakszom: nem indítottad el a sessiont session_start()-al.
3

De elindítottam!

Pisti20 · 2010. Okt. 4. (H), 14.49
A session startot már azért használom, és elindítottam.
3 session változóvól csak 1 volt hibás. Ugyanazon az oldalon, akkor nem lehet a session start a hiba.
4

Igaz. Akkor légy szíves

kuka · 2010. Okt. 4. (H), 14.58
Igaz. Akkor légy szíves közölj további részleteket, hogy ne kelljen találgassunk.
5

Ezt mond el pls.

Pisti20 · 2010. Okt. 4. (H), 15.02
Miért van az hogy ha az összes COOKIE-t visszacseréltem SESSION-ra, akkor az a kód amely cookie-vel, folyamatosan a cookie-ben megadott ideig engedte a bejelentkezéshez szükséges oldalakat látogatni, a session 1 frissítés után ledob, mint ha lejárna az ideje?
6

Azt hiszem megvan

Pisti20 · 2010. Okt. 4. (H), 15.11
A "Home" menüpont alá linknek a "$_SERVER[PHP_SELF]"-et raktam be, gondolom ez lehet a probléma oka.