Pliki cookies w PHP – notatka

1. Czym są pliki cookies?

Pliki cookies (ciasteczka) to niewielkie porcje danych tekstowych, które serwer WWW wysyła do przeglądarki użytkownika. Przeglądarka zapisuje je lokalnie na komputerze/urządzeniu, a przy każdym kolejnym żądaniu HTTP automatycznie dołącza te dane do nagłówków. Dzięki temu strona może „pamiętać” użytkownika między kolejnymi odsłonami.

Typowe zastosowania cookies:

  • zapamiętywanie zalogowanego użytkownika,
  • przechowywanie preferencji (np. język, motyw),
  • tworzenie koszyka w sklepie internetowym,
  • śledzenie statystyk i zachowań użytkowników.

2. Używanie cookies w PHP

a) Tworzenie ciasteczka

W PHP do ustawienia ciasteczka służy funkcja setcookie(). Składnia:

✅ Przykład:

➡️ Utworzy ciasteczko o nazwie user, wartości JanKowalski, które wygaśnie za 1 godzinę.


b) Odczytywanie ciasteczka

Cookies w PHP dostępne są w tablicy $_COOKIE.


c) Usuwanie ciasteczka

Aby usunąć ciasteczko, należy ustawić jego czas wygaśnięcia w przeszłości:


3. Bezpieczeństwo ciasteczek

Ponieważ cookies przechowywane są po stronie użytkownika, mogą być modyfikowane lub podglądane. Dlatego należy stosować zabezpieczenia:

  • httponly = true – ciasteczko nie będzie dostępne w JavaScript (ochrona przed XSS).
  • secure = true – ciasteczko wysyłane tylko przez HTTPS (ochrona przed podsłuchem).
  • Szyfrowanie lub podpisywanie wartości – aby zapobiec manipulacji.
  • Sesje w PHP ($_SESSION) – bezpieczniejsze niż samodzielne cookies do przechowywania wrażliwych danych.

4. Cookies a sesje w PHP

  • Cookies → przechowują dane bezpośrednio w przeglądarce.
  • Sesje ($_SESSION) → dane przechowywane są na serwerze, a w ciasteczku zapisany jest tylko identyfikator sesji (np. PHPSESSID).

Dzięki temu sesje są bezpieczniejsze i powszechnie stosowane np. do logowania.


5. Przykład – zapamiętywanie języka strony