Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z cookie
Forum PHP.pl > Forum > Przedszkole
gvk
ustawiam cookie:
setcookie("voted", "1", time()+604800);
przy probie odczytania zawartosci np. :
if ($_COOKIE['voted']=="1") {
wyskakuje mi Notice: Undefined index: voted in ...
wszytsko chodzi, ale ten komunikat mi przeszkadza.
Co robic?
Z góry dziękuje...
hwao
  1. <?php
  2. setcookie("voted", "1", time()+604800);
  3. ?>

musis nastapic przeladowanie strony...
  1. <?php
  2. setcookie("voted", "1", time()+604800); header( 'location: strona.pl' );
  3. ?>


sprawdz czy przegladarka obsluguje cookie
gvk
cookie jest ustawiane po przesłaniu danych do formularza, po czym nastepuje przeładowanie headerem. Odczytuje wartości z ciasteczka juz po przeładowaniu. Przeglądarka obsługuje cookie i cały skrypt działa poprawnie - jedynie pojawia sie sie ten notice.
To musi byc związane z register_globals bo kiedys gdy było włacząne wszystko było ok, teraz mam na off i pojawia sie komunikat.
tiraeth
Notice wyświetla się gdy, np. próbujesz się odwołać do zmiennej (bądź indeksu w tablicy) gdy ta nie istnieje. Prawdopodobnie Twoje cookie chce być wyświetlone nawet gdy ktoś wcześniej nie wypełnił formularza i np. chcesz je wyświetlić w formularzu, z informacją, że takowy został już wysłany (to tylko przypuszczenia)...

Zamiast sprawdzania wartości cookiesa ($_COOKIES['voted'] == 1) zrób sprawdzenie czy takowy istnieje (array_key_exists('voted', $_COOKIE)) smile.gif

Ewentualnie na początku skryptu:
  1. <?php
  2. error_reporting(E_ALL ^ E_NOTICE);
  3. ?>

Co spowoduje raportowanie wszystkiego co nie jest Notice (wskazówką), czyli tak jak powinno być domyślnie
gvk
uzyłem array_key_exists i wszystko jest ok. dzieki
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.