PHP - Cookies
Die Anatomie eines Cookies
Cookies sind kleine Datenpakete, die vom Webbrowser des Benutzers während des Surfens auf dem Computer des Benutzers gespeichert werden. Sie werden verwendet, um Informationen über den Benutzer, wie seine Präferenzen oder seinen Anmeldestatus, zwischen Sitzungen zu speichern. In PHP können Cookies mit integrierten Funktionen gesetzt und abgerufen werden.
Was ist ein Cookie?
Ein Cookie ist eine Textdatei, die eine Website auf der Festplatte Ihres Computers ablegt. Jedes Mal, wenn Sie die Website besuchen, sendet der Browser das Cookie zurück an den Server, um die Website über Ihre vorherige Aktivität zu informieren. Dies ermöglicht es Websites, Ihre Erfahrung basierend auf Ihren früheren Interaktionen mit ihnen anzupassen.
Arten von Cookies
Es gibt zwei Arten von Cookies: Sitzungscookies und dauerhafte Cookies.
- Sitzungscookies: Diese Cookies sind temporär und werden gelöscht, wenn der Benutzer den Browser schließt. Sie sind nützlich zum Speichern temporärer Informationen wie einer Einkaufswagenartikel Liste.
- Dauerhafte Cookies: Diese Cookies bleiben auf dem Computer des Benutzers, bis sie ihr Ablaufdatum erreichen oder vom Benutzer manuell gelöscht werden. Sie werden für längere Laufzeiten zur Verfolgung verwendet, wie z.B. zur Aufrechterhaltung von Benutzerpräferenzen oder Anmeldesitzungen.
Wie man ein Cookie in PHP setzt?
Um ein Cookie in PHP zu setzen, verwendet man die Funktion setcookie()
. Hier ist, wie man es macht:
<?php
// Setzen eines Cookies mit dem Namen "username" und dem Wert "JohnDoe", das nach 30 Tagen abläuft
setcookie("username", "JohnDoe", time() + (86400 * 30), "/");
?>
In diesem Beispiel setzen wir ein Cookie mit dem Namen "username" und dem Wert "JohnDoe". Das dritte Argument ist die Ablaufzeit, die durch Hinzufügen der Anzahl der Sekunden in 30 Tagen zur aktuellen Zeit (time()
) berechnet wird. Das vierte Argument ist der Pfad, in dem das Cookie verfügbar ist. Durch das Setzen auf "/", ist das Cookie auf der gesamten Website verfügbar.
Zugriff auf Cookies mit PHP
Sobald ein Cookie gesetzt wurde, kann man dessen Wert mit dem $_COOKIE
-Superglobalen Array in PHP abrufen. Hier ist ein Beispiel, wie man den Wert des "username"-Cookies abruft:
<?php
if(isset($_COOKIE["username"])) {
echo "Willkommen zurück, " . $_COOKIE["username"] . "!";
} else {
echo "Willkommen, Gast!";
}
?>
In diesem Code überprüfen wir, ob das "username"-Cookie mit isset()
gesetzt ist. Wenn es existiert, zeigen wir eine Willkommensnachricht mit dem Benutzernamen an. Andernfalls zeigen wir eine allgemeine Willkommensnachricht für Gäste an.
Löschen von Cookies
Um ein Cookie zu löschen, muss man seine Ablaufzeit auf ein vergangenes Datum setzen. Hier ist, wie man das "username"-Cookie löscht:
<?php
// Löschen des "username"-Cookies
setcookie("username", "", time() - 3600);
?>
Durch das Setzen der Ablaufzeit auf einen Zeitpunkt in der Vergangenheit wird der Browser automatisch das Cookie entfernen. In diesem Beispiel setzen wir die Ablaufzeit auf eine Stunde zurück, was das "username"-Cookie effektiv löscht.
Das war's! Sie wissen jetzt, wie man Cookies in PHP setzt, abruft und löscht. Denken Sie daran, Cookies verantwortungsvoll zu verwenden, da sie sensible Informationen speichern können. Stellen Sie immer sicher, dass Ihre Website die besten Praktiken für das Cookie-Management und den Datenschutz des Benutzers befolgt.
Viel Spaß beim Programmieren!
Credits: Image by storyset