Buna ziua.
Recent m-am confruntat cu o problema legata de setarea cookies, shi anume: am un fisier setcookie.php in care se face doar setarea variabilei (setcookie($_GET['name'],$_GET['value'],time()+3600,'/')), datele se primesc prin metoda GET, scriptul se apeleaza cu ajutorul ajax.
Simptomatica: la primul apel variabila se seteaza corect, la apelurile ulterioare valoarea ramane neschimbata.
Apelurile sunt legate de punctele din meniu, adica variabila trebuie sa tina minte care categorie din meniu a fost selectata.
Pana acum am folosit sesiuni, dar a aparut necesitatea de a implementa cookies, voi fi bucuros de orice sugestie. Merci anticipat
problema COOKIES
Moderatori: Moderatori, Start Moderator
- Birkoff
- Senior Member
- Mesaje: 6380
- Membru din: Joi Mar 18, 2004 2:34 pm
- Localitate: Bucuresti
- Contact:
dai si tu echo $_COOKIE[$_GET['name']]; sa vezi ce contine in functie de pagina si asa iti dai si tu seama cam ce problema e
1) )
2)
3) (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
2)
3) (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
Am incercat, daca apelez in browser direct fisierul setcookie.php cu parametrii GET se face setarea cookie cu un pas in urma, adica daca dau setcookie.php?name=tara&value=1 se seteaza cu 1, daca dau setcookie.php?name=tara&value=2 ramane 1 shi numai daca dau refresh sau apelez cu alta valoare primesc 2.
Am incercat sa fac apelul de doua ori consecutiv shi pare ca merge corect, aici apare alta problema.
Explic pe scurt cum se face apelul:
index.php apeleaza prin intermediul ajax "scripts/get_menu_items.php" care citeshte din DB elementele meniului, la fiecare punct din meniu se creaza evenimentul onclick="setCookie('tara',<? $row['id_tara'];?>)". Aceasta functie face apel la "scripts/setcookie.php" care la rindul sau creaza variabila.
Daca fac echo la variabila cookie in "scripts/get_menu_items.php" se afiseaza valoarea dorita, daca la aceeashi variabila fac echo din index.php, deja se ia prima valoare setata.. Adica daca am facut click pe primul element din meniu, ea tot timpul o sa fie setata cu 1.
Poate am gresit vre-un parametru in functia setcookie(), presupun ca problema apare din cauza ca fisierele se afla in directorii diferite
Am incercat sa fac apelul de doua ori consecutiv shi pare ca merge corect, aici apare alta problema.
Explic pe scurt cum se face apelul:
index.php apeleaza prin intermediul ajax "scripts/get_menu_items.php" care citeshte din DB elementele meniului, la fiecare punct din meniu se creaza evenimentul onclick="setCookie('tara',<? $row['id_tara'];?>)". Aceasta functie face apel la "scripts/setcookie.php" care la rindul sau creaza variabila.
Daca fac echo la variabila cookie in "scripts/get_menu_items.php" se afiseaza valoarea dorita, daca la aceeashi variabila fac echo din index.php, deja se ia prima valoare setata.. Adica daca am facut click pe primul element din meniu, ea tot timpul o sa fie setata cu 1.
Poate am gresit vre-un parametru in functia setcookie(), presupun ca problema apare din cauza ca fisierele se afla in directorii diferite
- Birkoff
- Senior Member
- Mesaje: 6380
- Membru din: Joi Mar 18, 2004 2:34 pm
- Localitate: Bucuresti
- Contact:
ba da dar probabil faci tu ceva gresit prin cod...
verifica si tu ce se intampla pe acolo, verifica daca sa setat cookie corect, verifica daca in celelalte pagini detecteaza acel cookie etc...
$is_set = setcookie('nume_cookie', $valoare_cookie, time()+3500, '/');
if ( $is_set)
echo 'ok';
else
echo 'bubu';
apoi in celelalte pagini (atentie cookie trebuie setat in radacina site-ului daca il setezi intr-un script dintr-un subdirector nu va rula decat in directorul ala, altfel tre sa ii dai calea exacta a domeniului)
verifici daca e
if ( isset($_COOKIE['nume_cookie']))
echo 'cookie exista si are valoarea '. $_COOKIE['nume_cookie'];
else
echo 'nu exista';
verifica si tu ce se intampla pe acolo, verifica daca sa setat cookie corect, verifica daca in celelalte pagini detecteaza acel cookie etc...
$is_set = setcookie('nume_cookie', $valoare_cookie, time()+3500, '/');
if ( $is_set)
echo 'ok';
else
echo 'bubu';
apoi in celelalte pagini (atentie cookie trebuie setat in radacina site-ului daca il setezi intr-un script dintr-un subdirector nu va rula decat in directorul ala, altfel tre sa ii dai calea exacta a domeniului)
verifici daca e
if ( isset($_COOKIE['nume_cookie']))
echo 'cookie exista si are valoarea '. $_COOKIE['nume_cookie'];
else
echo 'nu exista';
1) )
2)
3) (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
2)
3) (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Google [Bot] și 20 vizitatori