Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kto widzi cookies ?
Forum PHP.pl > Forum > PHP
krzysiekp_1988
W 2 skryptach sonda.php i ../index.php jest taki kawałek kodu :

  1. <?php
  2. if(!isset($_COOKIE['sonda']))
  3. {
  4.  $sonda = '2';
  5. }else
  6. {
  7.  $sonda=$_COOKIE['sonda'];
  8. }
  9. ?>


To ciasteczko jest ustawiane przez sonda.php i ten skrypt je widzi, ale ../index.php już nie, więc $sonda jest cały czas równa 2. Poza tym zauważyłem że IE w ogóle go nie znajduje, nawet w skrypcie sonda.php . Mam więc pytanie, jakie skrypty mają dostęp do danego cookie.
zbig13
do danego cookie mają dostęp wszystkie pliki pochodzące z danej strony www (czyli praktycznie wszystkie, które tworzysz na serwerze) więc nie wiem czemu nie możesz uzyskać dostępu. Podaj kod, którym wysyłasz "ciasteczko".
krzysiekp_1988
Ustawia je standartowo :
  1. <?php
  2. setcookie('sonda', '1', time()+86400);
  3. ?>
Lechu
Czy aby na pewno wysyłasz ciacho przed wyslaniem jakichkolwiek naglowkow? (np koniecznie przed <html>)

pozdrawiam
Lechu
krzysiekp_1988
To jest sonda.php
  1. <?php
  2. print &#092;"<LINK REL=stylesheet HREF=../style.css TYPE=text/css>
  3. <center><br><br>&#092;";
  4.  
  5.  
  6. include (&#092;"../config.php\");
  7.  
  8. if(!isset($_POST['glos']))
  9. {
  10.  $glos = 'glos1';
  11. }else
  12. {
  13.  $glos=$_POST['glos'];
  14. }
  15.  
  16.  
  17.  
  18.  
  19.  
  20. if(!isset($_COOKIE['sonda']))
  21. {
  22.  $sonda = '2';
  23. }else
  24. {
  25.  $sonda=$_COOKIE['sonda'];
  26. }
  27.  
  28.  
  29. if($sonda==&#092;"2\") 
  30. {
  31. $cid=pg_connect('dbname=krzysp user=krzysp host=io');
  32. $zapytanie = 'SELECT * FROM f2c_sonda';
  33. $wykonaj=pg_query($cid,$zapytanie);
  34. $wiersz = pg_fetch_array($wykonaj);
  35.  
  36. $ile=$wiersz[$glos]+1;
  37.  
  38. $apdejt=&#092;"UPDATE f2c_sonda SET \".$glos.\"=\".$ile;
  39.  
  40. pg_query($cid,$apdejt);
  41.  
  42. setcookie('sonda', '1', time()+60);
  43. }
  44.  
  45. if($sonda==&#092;"1\") 
  46. {
  47. print &#092;"<font color=red>Możesz oddac tylko 1 głos dziennie !</font><br>\";
  48. }
  49. ?>

Jakl widać przed ustawieniem ciasteczka są wysłane inne rzeczy, ale obszedłem to funkcją ob_start, tylko nie wiem czy jest dobrze użyta.
ActivePlayer
  1. <?
  2. ?>


na samym koncu dodaj.
___
aha nie doczytalem ... hmm... a pokombinuj z cookie path. poczytaj w manualu o tym. setcookie" title="Zobacz w manualu PHP" target="_manual
krzemian
Raczej jemu chodzi o zasięg zmiennych cookie, bo domyślnie to one chyba są widoczne tylko w danym folderze, spróbuj z taką konstrukcją:

  1. <?php
  2. setcookie('sonda', '1', time()+86400, '/', '');
  3. ?>


mam nadzieję, że nie pomyliłem kodu
zbig13
Chyba faktycznie cookie są widoczne tylko w danym katalogu. Wczoraj troche kombinowałem z tym i nawet takie coś nie działało:
  1. <?php
  2. setcookie('sonda', '1', time()+86400, '../', '');
  3. ?>
Nie wiem, a może spróbuj z sesjami.
krzysiekp_1988
OK, dzięki, po prostu wrzuciłem oba pliki do tego samego folderu i już wszystko działa.
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.