Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [COOKIE] Pobieranie z adresu strony
Forum PHP.pl > Forum > PHP
koszar93
Witam, nie mogę sobie poradzić z pobieraniem cookie z adresu strony.
Napisałem take coś:
  1. <?php
  2. $id = (int) $_GET['polecany'];
  3.  
  4. setcookie('polecani', $id);
  5.  
  6. echo 'Cookie has been set<br>';
  7. echo '' . $_COOKIE['polecani'].'';
  8.  
  9. ?>

w adresie wpisuję http://localhost/?polecany=123 i nic się nie dzieje, cookie się nie zmienia.
Pomocy winksmiley.jpg
wookieb
Bo ciasteczko zmieni się po odświeżeniu strony.
koszar93
wchodząc na http://localhost/?polecany=123 odświeżam ją kilka razy a cookie dalej się nie zmienia.
wookieb
A jak sprawdzasz, że się nie zmienia?
koszar93
Na jednej stronie mam
  1. echo '' . $_COOKIE['polecani'].'';

i po http://localhost/?polecany=123 odświeżam tamtą stronę i się nie zmienia
wookieb
Na jednej stronie tzn pod jakim adresem?
koszar93
Ok, poradziłem sobie z tym.
Teraz mam takie problem, że po wejściu w adres http://localhost/?polecany=123 cookie zmienia się na 123 ale jak wejdę w jakieś podmenu to cookie zmienia się na 0 a ja chce żeby to 123 było już na zawsze. Da się?
wookieb
Da sie. Ale sprawdź co wpisujesz do cookie var_dump to będziesz wiedział dlaczego wstawiana jest wartość 0.
koszar93
Dodałem var_dump($_COOKIE); i wynik:

array(3) { ["lang"]=> string(2) "pl" ["PHPSESSID"]=> string(26) "5p2l5oo5vrenrltbh4o8nq8aq2" ["polecani"]=> string(1) "0" }
wookieb
Powiedziałem, że masz sprawdzić co wpisujesz do twojego "docelowego" ciasteczka a nie jaka jest jego zawartość bo przecież ją znamy -.-
koszar93
var_dump($id); => int(0)
Oto chodzi bo nie czaje cię biggrin.gif
wookieb
No tak.
A skoro widzisz, że jest to 0 to skąd twoje zdziwienie, że w ciasteczku TEŻ to się znajduje?
koszar93
Po wejściu w adres http://localhost/?polecany=123 cookie się zmienia ale jak wejdę w np. http://localhost/index.php?subtopic=createaccount to ciasteczko zmienia się automatycznie na 0

screen
wookieb
Bo przecież TAKIE ID USTAWIASZ? (KOD z pierwszy posta)
Bags_Bunny
Każdorazowo je nadpisujesz wartością ze zmniennej, która nie istnieje, więc się zeruje.

  1. if( isset( $_GET['polecany'] ) )
  2. {
  3. $id = (int) $_GET['polecany'];
  4. setcookie('polecani', $id);
  5. echo 'Cookie has been set<br>';
  6. }
  7.  
  8. if( isset( $_COOKIE['polecani'] ) )
  9. {
  10. echo $_COOKIE['polecani'];
  11. }


Czemu takie tematy nię idą do przedszkola?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.