Najnowsze tutoriale tworzenie stron internetowych
 

PHP 5 Cookies


Cookie jest często używany do identyfikacji użytkownika.


Co to jest plik cookie?

Cookie jest często używany do identyfikacji użytkownika. Cookie to mały plik, który serwer osadza na komputerze użytkownika. Za każdym razem ten sam komputer żąda strony w przeglądarce, to wyśle ​​cookie zbyt. W PHP można zarówno tworzyć i pobierać wartości cookie.


Tworzenie Cookies w PHP

Cookie jest tworzone z setcookie() funkcji.

Składnia

setcookie( name, value, expire, path, domain, secure, httponly );

Wymagana jest tylko parametr name. Wszystkie pozostałe parametry są opcjonalne.


PHP Utwórz / Odzyskaj Cookie

Poniższy przykład tworzy plik cookie o nazwie "user" z wartością "John Doe" . Plik cookie wygasa po 30 dniach (86400 * 30) . "/" Oznacza, że plik cookie jest dostępny w całej stronie (w przeciwnym razie wybierz katalog wolisz).

Następnie pobrać wartość cookie "user" (za pomocą globalnej zmiennej $ _COOKIE). Mamy również użyć isset() funkcji, aby dowiedzieć się, czy plik cookie jest ustawiony:

Przykład

<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>

<?php
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
    echo "Cookie '" . $cookie_name . "' is set!<br>";
    echo "Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
Uruchomić przykład »

Note: setcookie() funkcja musi stanąć przed <html> tag.

Note: Wartość cookie jest automatycznie urlencoded podczas wysyłania cookie i automatycznie dekodowane przy odbiorze (aby zapobiec URLencoding, użyj setrawcookie() zamiast).


Zmodyfikować wartość Cookie

Aby zmodyfikować plik cookie, po prostu ustaw (again) cookie pomocą setcookie() funkcji:

Przykład

<?php
$cookie_name = "user";
$cookie_value = "Alex Porter";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>

<?php
if(!isset($_COOKIE[$cookie_name])) {
    echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
    echo "Cookie '" . $cookie_name . "' is set!<br>";
    echo "Value is: " . $_COOKIE[$cookie_name];
}
?>

</body>
</html>
Uruchomić przykład »

Usuwanie plików cookie

Aby usunąć pliki cookie, użyj setcookie() funkcji z datą wygaśnięcia w przeszłości:

Przykład

<?php
// set the expiration date to one hour ago
setcookie("user", "" , time() - 3600);
?>
<html>
<body>

<?php
echo "Cookie 'user' is deleted.";
?>

</body>
</html>
Uruchomić przykład »

Sprawdź, czy Cookies są włączone

Poniższy przykład tworzy mały skrypt, który sprawdza, czy cookies są włączone. Po pierwsze, spróbuj utworzyć plik cookie testową z setcookie() funkcji, a następnie policzyć zmienną tablicową $ _COOKIE:

Przykład

<?php
setcookie("test_cookie", "test" , time() + 3600, '/');
?>
<html>
<body>

<?php
if(count($_COOKIE) > 0) {
    echo "Cookies are enabled.";
} else {
    echo "Cookies are disabled.";
}
?>

</body>
</html>
Uruchomić przykład »

Kompletna PHP HTTP referencyjny

Pełną odniesienia funkcji HTTP, przejdź do naszej pełnej Reference PHP HTTP .