Cookies

Als Cookies werden kurze Informationen bezeichnet, die der WWW-Server beim Client (Betrachter) hinterlassen kann. Se sind vor allem beim elektronischen Einkaufen im WWW von Bedeutung, genauer gesagt sind sie immer dann von Bedeutung, wenn der Server weitergehende Information vom Betrachter haben muß, als nur die Internet-Adresse, die eine Seite anfordert.

Cookies bestehen aus folgender Information:
\begin{liste}
\par
\item Name: Name
\par
\item Value: Wert
\par
\item expires: ...
...über verschlüsselte
Informationskanäle übertragen werden.
\par
\end{liste}

Beispiel: Wir wollen feststellen, ob ein Betrachter eine Seite schon einmal aufgerufen hat. Dazu setzen wir beim ersten Aufruf der Seite ein Cookie. Dies muß allerdings vor dem HTML-Head geschehen, d.h. am Anfang der Datei. (Unbedingt auch die Ausgabe von Leerzeilen, -Zeichen vor diesem PHP-Teil vermeiden!)


\begin{code}
\textless{}?
\$t = time()+3600*24*10;
SetCookie(''mycookie'',''S...
...est'',''.de'');
?\textgreater{}
\textless{}HTML\textgreater{}
...
\end{code}

Dieser Befehl setzt ein Cookie mit dem Namen
\begin{code}mycookie\end{code}
auf den Wert "schon besucht" mit einem Verfallsdatum von 10 Tagen. Lesen darf dieses Cookie jeder Server mit der Endung
\begin{code}.de\end{code}
, allerdings nur aus Dateien, die in einem Verzeichnis
\begin{code}/test\end{code}
, oder Unterverzeichnissen davon liegen.

Das Verfallsdatum des Cookie muß in Sekunden seit dem 1. Januar 1970 angegeben werden. Die Funktion
\begin{code}time()\end{code}
gibt die Sekunden seit dem 1. Januar 1970 der momentanen Zeit an. Weitere Datums- und Zeitfunktionen sind im HREF URL="../php-manual/ref.datetime.html" name="Handbuch" nachzulesen. Da die Berechnung der Sekunden nicht immer ganz übersichtlich ist, empfiehlt sich die Verwendung einer Funktion:
\begin{code}
function tage (\$anzahl) \{
\$sekunden = time()+ 3600 * 24 * \$an...
...okie(''mycookie'',''Schon besucht'',tage(10),''/test'',''.de'');
\par
\end{code}

Cookies lesen ist mit PHP wieder sehr einfach realisiert: Der Inhalt des Cookies ist in einer Variablen mit dem Namen des Cookies enthalten:
\begin{code}
echo ''\$mycookie'';
\end{code}

gibt also den Wert des Cookies aus, in unserem Fall den Text "Schon besucht".

Ein Server kann mit PHP ein Cookie wieder entfernen, indem lediglich der Befehl
\begin{code}setcookie\end{code}
mit dem Namen des Cookies als Argument angegeben wird:
\begin{code}
SetCookie(''mycookie'');
\end{code}