Ciasteczka w PHP bez odświeżania

Niektórzy początkujący programiści stron www szukają rozwiązania problemu gdy chcą wykorzystać ciasteczko utworzone w php odrazu po jego utworzeniu, napotykają problem: jest ono dostępne dla skryptu php dopiero po ponownym odświeżeniu strony. Rozwiązanie tego problemu przydaje się na przykład przy budowie prostego licznika odwiedzin na stronie www. Przykładowy kod:

if(!isset($_COOKIE['ciasteczko']))
{
setcookie('ciasteczko','hej jestem ciasteczkiem',time()+3600);
}
echo $_COOKIE['ciasteczko'];

Kod ten najpierw sprawdza czy mamy utworzone ciasteczko o nazwie ‚ciasteczko’. Przy pierwszym wejściu na stronę go nie mamy, więc zostanie ono utworzone. Następnie chcemy odrazu wykorzystać to ciasteczko – przykładowo wyświetlając jego wartość na ekranie. Niestety przy pierwszym uruchomieniu tego skryptu dostaniemy błąd informujący o nieistniejącym ciasteczku. Dopiero po drugim odświeżeniu ciasteczko będzie dla nas dostępne.

Zostań Profesjonalistą W Tworzeniu Aplikacji Webowych! Zapisz Się Na Kurs Laravel nauczysz się również tworzyć aplikacje hybrydowe na smartfony

Jak temu zaradzić? „Przedefiniujemy” deklarację ciasteczka dodając pod instrukcją setcookie wiersz $_COOKIE['ciasteczko'] = 'hej jestem ciasteczkiem';

if(!isset($_COOKIE['ciasteczko']))
{
setcookie('ciasteczko','hej jestem ciasteczkiem',time()+3600);
$_COOKIE['ciasteczko'] = 'hej jestem ciasteczkiem';
}
echo $_COOKIE['ciasteczko'];

Od tego pory ciasteczko jest od razu do naszej dyspozycji. Opisany mechanizm można wykorzystać np. do licznika odwiedzin na stronie www.

 

zapisz się na kurs Laravela >>>> lub program partnerski
Share

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *