SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an.
Weitere Informationen
Cookies können mit PHP durch die Funktion setcookie() erzeugt werden. Die Syntax lautet wie folgt:
setcookie(name[, value[, expires[, path[, domain[, secure]]]]]);
Da Cookies Bestandteile eines HTTP-Headers sind, muss diese Funktion genau wie bei der Funktion header()aufgerufen werden, noch bevor irgendeine andere Ausgabe an den Browser erfolgt. Im folgenden Beispiel wird mithilfe der Funktion setcookie() ein Cookie gesetzt:
Beispiel
<?php
// Inhalt festlegen
$inhalt = "Ich bin dein Cookie!";
// Cookie erzeugen
setcookie("cook_first_one",$inhalt, time()+600);
// Prüfen
if (!$_COOKIE[cook_first_one]) {
echo "Cookie ist nicht vorhanden!";
} else {
echo $_COOKIE[cook_first_one];
}
?>
Die Funktion erzeugt ein Cookie mit dem Namen cook_first_one und dem Inhalt aus der Variablen $inhalt. Der Parameter expires, der die Lebensdauer des Cookies in Sekunden nach dem 1.1.1970 angibt, wird durch die Funktion time() und ein Offset von 600 Sekunden erzeugt. Die Funktion time() gibt dabei den aktuellen Unix-Zeitstempel zurück, sodass auf diese Weise für das Cookie eine Lebensdauer von zehn Minuten festgelegt wird. Wird keine Zeit angegeben, ist das Cookie so lange gültig, bis der Browser geschlossen wird.
Die übrigen Parameter für path, domain und secure wurden nicht gesetzt.
Beim Aufruf der Seite wird das entsprechende Cookie gesetzt. Sofern Sie Ihren Browser entsprechend konfiguriert haben, wird vor dem Setzen von Cookies eine entsprechende Meldung angezeigt, aus der Sie alle wesentlichen Daten des Cookies entnehmen können.

Bild 4.5: Browser meldet Cookie
Darüber hinaus passiert zunächst gar nichts. Beim nächsten Aufruf derselben Seite kann die im Cookie abgelegte Information verwendet werden. Dem verarbeitenden Skript steht das Cookie in Form einer Variablen $cook_first_one zur Verfügung. Der Inhalt wird mithilfe des echo-Befehls ausgegeben.
Hinweis: Beachten Sie, dass der Wertebereich des Cookies automatisch URL-konform kodiert (urlencoded()) wird, sobald Sie das Cookie senden, und wenn es gelesen wird, wird es automatisch URL-konform dekodiert (urldecode()) und einer Variablen zugewiesen, die denselben Namen wie das Cookie trägt.
Namenskonflikte
Da das Auslesen der Cookies durch Übergabe des Inhalts in eine gleichlautende Variable erfolgt, kann es Namenskonflikte mit GET- oder POST-Daten geben. Welche Datenquelle den Vorrang besitzt, kann in der Konfigurationsdatei php.ini festgelegt werden. Suchen Sie den folgenden Eintrag im Abschnitt [Data Handling]:
gpc_order = gpc;
Wenn der Eintrag nicht existiert, fügen Sie ihn hinzu. Der Reihenfolge wird durch das Argument bestimmt:
- g steht für GET
- p für POST
- c für Cookie
|