Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: $_COOKIE ?
Forum PHP.pl > Forum > Przedszkole
Vertical
Mam następujące pytanko: Piszę w jednym ze skryptów:
  1. <?php
  2. $_COOKIE['Vertical'] = $_COOKIE['Vertical'];
  3. print_r( $_COOKIE );
  4. ?>

I wszystko jest spoks, wyświetla mi "Array ( [passwd1a2b3c] => )". Tylko, że kiedy w drugim skrypcie piszę:
  1. <?php
  2. print_r( $_COOKIE );
  3. ?>

...to wtedy wyświetla mi samo "Array" (skrypt wcześniej działał!). Czy ktoś może wie, dlaczego to nie działa? Mi już się pomysły skończyły blink.gif
rogrog
powinieneś użyc setcookie żeby ustawic ciasteczko bo podany przez Ciebie sposób zmienia zmienną w skrypcie, ale nie ustawia ciacha
Kuziu
bo Cookies to tabilca ?
rogrog
Cytat(Kuziu @ 2004-10-01 20:41:02)
bo Cookies to tabilca ?

no co Ty powiesz? ale to nic nowego nie wnosi, przecież jeśli chcemy ustawić ciastaczko na kliencie musimy użyć setcookie" title="Zobacz w manualu PHP" target="_manual a nie przypisywać w tablicy
cim
ciastko wysyła sie funkcją 'setcookie()', a wartość ciastka oczytuje za pomocą zmiennej (takiej jak nazwa ciacha), albo lepiej-bezpieczniej z tablicy superglobalnej $_COOKIE[]
Vertical
To chyba oczywiste, że na początku ustawiłem ciacho? Nie pisałem tego, żeby można było szybciej połapać się na błędzie. To może tak: ustawiłem ciacho:
  1. <?php
  2. setcookie('Vertical', 'Vertical', 0);
  3. ?>
mpps
czy wydaje mi się, czy w drugim skrypcie brakuje Ci definicji zmiennej?
Vertical
....Oto cały mój pierwszy skrypt:
  1. <?php
  2. setcookie('Vertical', 'Vertical', 0);
  3. $_COOKIE['Vertical'] = $_COOKIE['Vertical'];
  4. print_r( $_COOKIE );
  5.  
  6. ?>

A oto drugi:
  1. <?php
  2.  
  3. print_r( $_COOKIE );
  4.  
  5. ?>

I w pierwszym wyświetla napis "Array( [Vertical] =>)", a w drugim samo "Array". Czy ktoś zna przyczynę?
ARJ
w tym przypadku zmienna $_cookie jest tablicą, nalezy ją wyświetlić tak jak tablice.
hwao
Cytat(Vertical @ 2004-10-03 20:23:51)
....Oto cały mój pierwszy skrypt:
  1. <?php
  2. setcookie('Vertical', 'Vertical', 0);
  3. $_COOKIE['Vertical'] = $_COOKIE['Vertical'];
  4. print_r( $_COOKIE );
  5.  
  6. ?>

A oto drugi:
  1. <?php
  2.  
  3. print_r( $_COOKIE );
  4.  
  5. ?>

I w pierwszym wyświetla napis "Array( [Vertical] =>)", a w drugim samo "Array". Czy ktoś zna przyczynę?

  1. <?php
  2. setcookie('Vertical', 'Vertical', 0);
  3. ?>

Nastawiasz czast dzialania cookie na 0 czyli tylko w czasie skryptu

Cytat
int setcookie ( string nazwa [, string wartość [, int data_ważności [, string ścieżka [, string domena [, int bezpieczne]]]]])


  1. <?php
  2. $ile = 60*60*2; // Ile ciastko ma byc aktywne tutaj jest 60 s razy 60 min * 2 co Ci da 2h :-)
  3. setcookie( 'Vertical', 'Vertical', time()+$ile );
  4. ?>


Po przeladownaiu mozesz
  1. <?php
  2. print_r( $_COOKIE );
  3. // albo zaezne od php
  4. print_r( $HTTP_COOKIE_VARS );
  5. ?>
Kuziu
Cytat(rogrog @ 2004-10-01 20:44:16)
Cytat(Kuziu @ 2004-10-01 20:41:02)
bo Cookies to tabilca ?

no co Ty powiesz? ale to nic nowego nie wnosi, przecież jeśli chcemy ustawić ciastaczko na kliencie musimy użyć setcookie" title="Zobacz w manualu PHP" target="_manual a nie przypisywać w tablicy

no co Ty niepowiesz ...

Cytat
Kod php:
1
2
3
  1. <?php
  2. print_r( $_COOKIE );
  3. ?>



...to wtedy wyświetla mi samo "Array" (skrypt wcześniej działał!). Czy ktoś może wie, dlaczego to nie działa? Mi już się pomysły skończyły 


chyba jak mu się pojawia Array to dlatego ? .......
Vertical
...OK. Ustawiam
  1. <?php
  2. setcookie('Vertical', 'Vertical', 3600 * 30);
  3. ?>

Ale nadal nie wyświetla się zawartość ciasteczka w drugim skrypcie... sad.gif
SoulRipper
a czemu nie mozna tak:
  1. <?php
  2.  
  3. echo $_COOKIE[&#092;"Vertical\"];
  4.  
  5. ?>
silent
A tak:
  1. <?php
  2. setcookie('Vertical', 'Vertical', time()+3600);
  3. ?>
wassago
ten temat schodzi na psy - Vertical, poczytaj w manualu o ciachach to bedizesz wszystko wiedzial.
Zamykam
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.