burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
07.12.2016, 23:07 Uhr - Impressum

Tutorials - Erste Schritte - Cookies - Setzen und Auslesen

Tutorials - Erste Schritte
Cookies: Setzen und Auslesen
Jeder hat das schon mal gehört: Webpages können "Cookies" setzen.
Woher der Begriff kommt, kein Plan. Ich glaub das weiss so ziemlich niemand.
Ist ja auch egal.

Cookies sind nichts anderes als dass die Webpage dem Browser sagt:
"Ähm du da, speicherd doch mal bitte folgenden Wert für mich, damit ich den später wieder auslesen kann."

Und dann macht der Browser das, jeder auf seine Art und Weise.
Der Internet Explorer legt für jede Webpage irgendwo unter Dokumente und Einstellungen eine .txt-Datei ab, beim Opera hab ich das bis heute nicht gefunden, wo die Cookies liegen.

An sich sind Cookies ungefährlich, sie können wahrlich nichts anderes als den Auftrag zum Text-Schreiben geben.
Und der Browser achtet sehr darauf dass jede Webpage nur seine eigenen Cookies auslesen kann.

Also... keine Angst vor Cookies.

PHP hält die Funktion setCookie() bereit zum Setzen von Cookies.

setCookie( Name, Wert, gültig bis, Verzeichnis, Domain, Secure)

Wirklich benötigt wird nur die Angabe von Name, allerdings... ohne Wert - nutzt ein Cookie selten etwas.

Zuerst setzen wir mal einen ganz einfachen Cookie.
Nur mit Angabe von Name und Wert.

Gebe dazu im Formular deinen Namen (oder irgendwas anderes) ein und schicke es ab)
gesetzt in $_POST 'Name', 'absenden'
<?php

?>
Dein Name:
FormularQuelltext anzeigen
<html>
     <form method="post" action="/script.php">
          Dein Name: <input type="text" name="Name" value="Arno Nym"><br />
          <input type="submit" name="absenden" value="Script starten">
     </form>
</html>
Cookies werden von PHP im Array $_COOKIES gespeichert.

Wenn du das Script eben ausgeführt hast und ein Cookie "Besuchername" gesetzt wurde, solltest du jetzt Ordnungsgemäß begrüßt werden:
<?php
echo "Herzlich willkommen " . $_COOKIE["Besuchername"];
?>
So kann man jede beliebige Information über einen Benutzer speichern.
Auch wann er z.B. das letzte Mal auf dieser Page war:
<?php
setCookie("lastVisit", time());
echo "Cookie gesetzt";
?>
^^ Lass es setzen und hier ausgeben:
<?php
echo "Herzlich willkommen " . $_COOKIE["Besuchername"] . ".<br />\n
Du warst das letzte Mal hier am
" . date("d.m.Y, H:i", $_COOKIE["lastVisit"]);
?>
Als kleiner Beweis, php-dummies.de setzt keine schlimmen Cookies auf deinen Rechner:
Hier werden alle $_COOKIE's aufgeführt, die von dieser Page gesetzt sind:
<?php
echo "Es sind insgesamt " . count($_COOKIE) . " Cookies gesetzt: <br /><br/>\n";
foreach($_COOKIE as $cookieName => $cookieValue)
{
     echo "Cookie <b>$cookieName</b>: $cookieValue<br />\n";
}
?>
© 2004-2005 - Impressum