[php]

0

cookies od razu znikaja po zamknieciu okna przegladarki, jakustawic jes tak aby byly u usera caly czas?--Vroc
&ltDelphi Knight&gt

0

Ustawic czas zycia cookie na now()+duuuuza_liczba :)
setcookie("nazwa","wartosc",now()+360024311210); //taki cookie bedzie istnial ok. 10 lat po jego utworzeniu--Delphi 5
[ www.dchcorp.host.sk] - niestety w budowie :((
Pozdrawiam

0

Vroc napisał:
cookies od razu znikaja po zamknieciu okna przegladarki, jakustawic jes tak aby byly u usera caly czas?

Ja osobiście nie lubie ciastek bo zawsze są z nimi problemy,
np kiedy próbuje się takie ustawić z pod domeny prv.pl
ale mnijsza z tym, nie wiem nie mam pojęcia, poniżej masz
cały dział dotyczący cookie z manuala, teoretycznie po
przeczytaniu powinieneś znać odpwiedź, a mi się tego
czytać nie chce :D

setcookie
(PHP 3, PHP 4 &gt= 4.0.0)

setcookie -- Wysyła ciasteczko
Opis
int setcookie ( string nazwa [, string wartość [, int data_ważności [, string ścieżka [, string domena [, int bezpieczne]]]]])

setcookie() określa ciasteczko (ang. cookie) do wysłania z nagłówkami HTTP. Ciasteczko musi być wysłane zanim jakiekolwiek inne nagłówki zostaną wysłane (to jest ograniczenie ciasteczek, nie PHP). To wymaga od ciebie umieszczenia wywołań tej funkcji przed znacznikami &lthtml&gt czy &lthead&gt.

Wszystkie argumenty poza nazwa są opcjonalne. Jeśli tylko argument nazwa jest obecny, ciasteczko o takie nazwie zostanie usunięte z klienta. Możesz też opuścić argumenty za pomocą pustego łańcucha (""). Argumenty data_ważności i bezpieczne są liczbami całkowitymi i nie można ich opuścić wstawiając pusty łańcuch. Zamiast niego użyj liczby zero (0). Argument data_ważności jest regularnym uniksowym znacznikiem czasu, takim jak zwracany przez funkcje time() lub mktime (). Argument bezpieczne oznacza, że ciasteczko może być przekazywane tylko poprzez bezpieczne połączenie HTTPS.

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.

W PHP 3, wielokrotne wywołania setcookie() w jednym skrypcie wykonywane były w odwrotnej kolejności. Jeśli chcesz usunąć jedno ciastko przed wprowadzeniem kolejnego, powinieneś umieścić wprowadzenie nowego przed usunęciem starego. W PHP 4, wielokrotne wywołania setcookie() wykonywane są we właściwej kolejności.

Parę przykładów - jak wysyłać ciasteczka: Przyk³ad 1. setcookie() wysyła przykładowe ciasteczka

setcookie ("TestCookie", $value);
setcookie ("TestCookie", $value,time()+3600); /* traci ważność za godzinę */
setcookie ("TestCookie", $value,time()+3600, "/~rasmus/", ".utoronto.ca", 1);

Aby skasować ciasteczko, należy ustawić datę ważności na datę w przeszłości, co uruchomi w przeglądarce mechanizm kasowania ciasteczek. A teraz, jak usunąć ciasteczka z poprzedniego przykładu: Przyk³ad 2. Kasowanie ciasteczek

  • ustaw datę ważności na godzinę wstecz
    setcookie ("TestCookie", "", time() - 3600);
    setcookie ("TestCookie", "", time() - 3600, "/~rasmus/", ".utoronto.ca", 1);

Proszę zwrócić uwagę, że zawartość ciasteczka jest automatycznie kodowana do formatu URL przy wysyłaniu, a po odebraniu automatycznie dekodowana i przypisywana do zmiennej o tej samej nazwie co ciasteczko. Aby poznać zawartość przykładowego ciasteczka ze skryptu, należy zastosować poniższy przykład:

echo $TestCookie;
echo $HTTP_COOKIE_VARS["TestCookie"];

Można też tworzyć tablice złożone z ciasteczek za pomocą zapisu tablicowego w nazwie ciasteczka. Powoduje to utworzenie tylu ciasteczek, ile jest elemetów tablicy, a po otrzymaniu takiego ciasteczka, jego wartości umieszczane są w tablicy o nazwie takiej jak ciasteczko.

setcookie ("cookie[three]", "cookiethree");
setcookie ("cookie[two]", "cookietwo");
setcookie ("cookie[one]", "cookieone");
if (isset ($cookie)) {
while (list ($name, $value) = each ($cookie)) {
echo "$name == $value<br&gt\n";
}
}

Więcej informacji na temat ciasteczek znajduje się w specyfikacji Netscape'a, na stronie http:*www.netscape.com/newsref/std/cookie_spec.html.

Microsoft Internet Explorer 4 z zainstalowanym Service Pack 1 nie radzi sobie poprawnie z ciasteczkami, które mają ustawiony parametr ścieżka.

Netscape Communicator 4.05 i Microsoft Internet Explorer 3.x niepoprawnie obsługują ciasteczka, w których ścieżka i data_ważności nie są ustawione.
--__________________________________
Pozdrawiam...
piechnat

1 użytkowników online, w tym zalogowanych: 0, gości: 1