Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Problem z czytaniem cookies (?)
Forum PHP.pl > Forum > Przedszkole
Bartek Blaszczyk
mam bardzo dziwny problem z czytaniem plikow cookie z poziomu php:
cookie ustawiam w skrypcie przy pomocy funkcji setCookie, nastepnie w innym skrypcie chce to cookie odczytac. w firefoxie odczytuje sie tylko po wpisaniu adresu skryptu z palca a pole adresu przegladarki (po przekierowaniu do skryptu i 'odswiezaniu' nie dziala). z kolei w ie nie dziala w ogole. odczytujac cookie korzystam z tablicy $_COOKIE. zaznaczam, ze co do ustawien, domeny, sciezki i czasu jestem pewien co do poprawnosci podanych przeze mnie argumentow.
czy ktos moze mial podobny problem lub/i wiec jak go rozwiazac?questionmark.gif
mike
Nie podałes kodu, więc pozostaje strzelać.
Czyżbyś nadział się na to:
Cytat(setcookie())
Częste pułapki:
  • Ciasteczka nie będą widziane do następnego przeładowania strony dla której mają być widoczne.
  • Ciasteczko może być usunięte tylko z tymi parametrami, z jakimi je ustawiono.

setcookie()
Guest
nie, nie - to na pewno nie to - przeczytalem dokladnie w manualu na temat setcookie().
podaje kod (oba skrypty sa w tym samym katalogu, hosting na home.pl):

SetCookie.php

  1. <?php
  2. define('COOKIE_LIFETIME', 30 * 24 * 60 * 60); // 1 month
  3. if (isset($_GET['SetCookie']))
  4. {
  5. setcookie('TestCookie', $_GET['CookieValue'], time() + COOKIE_LIFETIME);
  6. }
  7. ?>
  8. <form action="?" method="GET">
  9. Cookie value: <input type="text" name="CookieValue">
  10. <input type="submit" name="SetCookie" value="Set"><br /><br />
  11. </form>
  12. <br /><br />
  13. <a href="ReadCookie.php">Read cookie...</a>


ReadCookie.php

  1. Cookie value: "
  2. <?php echo($_COOKIE['TestCookie']); ?>
  3. "<br /><br />
  4. <a href="SetCookie.php">Set cookie...</a>


no i dupa - nie dziala... sad.gif
wywoluje SetCookie.php, wpisuje tam jakas wartosc, nastepnie przechodze za pomoca linka do ReadCookie.php i nic. odswiezam - i nic. kilka razy - nic. wpisuje adres recznie w pasek adresu (w firefoxie) wtedy dziala.
w internet explorerze nie dziala w ogole...
Kuziu
Wkleiłem Twój kod u mnie i działa.
Napewno masz włączone cookies w przeglądarce ?
mike
Lub druga sprawa: możesz mieć włączone register_globals.
Wtedy nie masz tablic superglobalnych $_GET, $_POST, ...
Guest
Cytat
Napewno masz włączone cookies w przeglądarce ?

tak na stowe... zreszta sprawdzalem - cookies sie zapisuja w przegladarce.

Cytat
Lub druga sprawa: możesz mieć włączone register_globals.
Wtedy nie masz tablic superglobalnych $_GET, $_POST, ...

w home.pl dla php4 register globals jest domyslnie wlaczone, ale ciagle mam dostep do tablic superglobalnych. odpalalem te skrypty pod php5, gdzie register globals jest wylaczone z tego co wiem, i dzialalo dokladnie tak samo...
poza tym sprawdzalem tez w tablicy $_GLOBALS - tez nic...
BartekBlaszczyk
sluchajcie - problem rozwiazany biggrin.gif
okazalo sie, ze to 'wina' ZoneAlarm, ktory sobie niedawno zainstalowalem.
otoz mialem ustawione (chociaz nie przypominam sobie, zebym sam to ustawial) blokowanie 3rd party cookies. przywrocilem wartosci domyslne (tam blokowanie bylo wylaczone) i wszystko zaczelo dzialac.
tylko teraz pytanie - dlaczego to cookie zostalo uznane za 3rd party cookie...?
emitra
A ja mam następujący problem.

Wszystko ladnie mi smigalo. Cookiesy sie zapisywały zalozmy ze skryty byly pod adresem http://adres.costam.xxx.pl
ladnie logowanie dzialalo i wszycy byli happy ;]

do czasu az wykupilem sobie domenke powiedzmy adres.pl noi przekierowalem ja na http://adres.costam.xxx.pl

No i pojawiły sie problemy.
Pod FireFoxem ladnie smiga niestetry pod IE nie zapisuje ciastek. Nie tlyko mi. A wszystkim uzytkownikom. Natomiast wszystkim bezblednie smiga pod FF. Probowalem roznych kombinacji i zadna nie zadzialala oto one:

Kod
setcookie ("user_session", $user_session, (time () + $cookie_live),0);
setcookie ("user_session", $user_session, (time () + $cookie_live), "/", ".adres.pl",0);
setcookie ("user_session", $user_session, (time () + $cookie_live), "/", ".adres.costam.xxx.pl",0);


I nic. Jak moilem pod FF ladnie dziala jak podgladam sobie ciasteczka i jak dam wszystkie 3 linijki w kodzie to ciastko zapisuej sie dla
domeny: .adres.costam.xxx.pl
katalog: /

oraz
domeny: adres.costam.xxx.pl
katalog: 0

i ladnie dziala natomiast nie potrafie przekonac Iexplorera6 by wzial przyklad z konkurenta.

Pozdrawiam
mediasp
Cytat(BartekBlaszczyk @ 13.04.2006, 04:20:51 ) *
sluchajcie - problem rozwiazany biggrin.gif
okazalo sie, ze to 'wina' ZoneAlarm, ktory sobie niedawno zainstalowalem.
otoz mialem ustawione (chociaz nie przypominam sobie, zebym sam to ustawial) blokowanie 3rd party cookies. przywrocilem wartosci domyslne (tam blokowanie bylo wylaczone) i wszystko zaczelo dzialac.
tylko teraz pytanie - dlaczego to cookie zostalo uznane za 3rd party cookie...?


Miałem podobny z Mozillą i Avasem. W IE ciasteczka funkcjonowały poprawnie a w Mozilli nie były odczytywane. Po wyłączeniu Avastu skrypt działał poprawnie. I nie wiem dlaczego tak sie dzieje?
Skrypt zabezpieczał przed wielokrotnym głosowaniem.
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.