Cookie Eigenschaften

EigenschaftWertTippBeschreibung
Cookienamen:Keine Sonderzeichen benutzen.
Cookiewert:Keine Sonderzeichen benutzen.
Geltungsdauer
Entweder Max-Age (aktuell) oder Expires (wird obsolet). Für die Sicherheit müsste es angegeben werden. Angabe in der Vergangenheit löscht das Cookie.
Domain Eingabe einer Domäne oder nichts.Ohne Angaben: es wird die Domäne übernommen, aus der die aktuelle Seite geladen wurde. Das Cookie kann nur aus der angegebenen Domäne gelesen werden.
PathEingabe eines Pfads oder nichts. Das Cookie kann nur von Dateien gelesen werden, die im angegebenen Verzeichnis oder einem seiner Unterverzeichnisse liegen.
SecureSecureflag setzen? Das Cookie kann nur von einem sicheren Server (HTTPS) gelesen werden und nur in Kombination mit gesetztem SameSite erlaubt.
HttpOnlyHttpOnlyflag setzen? JS kann Cookies mit dieser Eigenschaft weder lesen noch setzenDas Cookie mit dem Attribut 'HttpOnly' kann weder von JS gelesen noch geschrieben werden (lesbar nur über HTTP-Protokoll)
SameSite Diese Option alleine oder in Kombination mit 'secure' und/oder 'HttpOnly' sind sehr von der Cookiehandhabung der Browser und deren Verständnis ab.
Auch ist das Auslesen oder Setzen der Cookies von der Verwendeten Sprache abhängig. Unterschiede wie das Cookie-setzen oder -lesen mit HTTP-Request (fetch()), PHP oder JS müssen berücksichtigt werden
CommentObsoletcomment= war ein Attribut in der Cookie-Spezifikation (Netscape Cookie Specification, 1997). Heute wird dieses Attribut von allen modernen Browsern ignoriert
VersionObsoletversion= war ein Attribut um Konflikte zwischen der alten RFC2965 und der Aktuellen "Request for Comments: 6265" zu unterscheiden


Cookiesetzen Anweisung:

Cookies auslesen:

Linkliste

Übersicht von mediaevent.de
Weitere Spielwiese (mit Datumsfunktionen)
HTTP State Management Mechanism
Datenübergabe URL-PHP




	
Innhalt der PHP-Datei aufrufen und anzeigen
<script> function PHPcookiesAnzeigen() { const daten = "Zahl_1=Eins&Zahl_2=Zwei&Zahl_3=Drei"; const x = new XMLHttpRequest(); x.open("POST", "cookieTest.php"); x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); x.responseType = "text"; x.send(daten); x.onload = function() { document.getElementById("PHPausgabe").innerHTML = x.response; // jsDaten = x.response; }; } </script>
Quelltext von 'cookieTest.php'
<?php $i=1; foreach($_COOKIE as $key => $value) { echo "Cookie $i) Name = $key, Wert = $value<br>"; $i++; } echo "<br>Es hat " . count($_COOKIE) . " aktive Cookies"; ?>
Innhalt des JS-Scripts für die Cooki Auswertung und Anzeige
<script> function JScookieSetzen() { formLesen(); try { document.cookie = cookieString; } catch(e) { alert("Das Cookie " + cookieString + " konnte nicht gesetzt werden"); } } function JScookiesAnzeigen() { let a_guetzli = []; ausgabe = document.getElementById("JSausgabe"); ausgabe.innerHTML = ""; dc = document.cookie; if(dc.length < 1) { ausgabe.innerHTML += `<br>Es hat 0 aktive Cookies`; return; } g = dc.split(';'); for(i=0;i<g.length;i++) { a_guetzli[i] = []; a_guetzli[i] = g[i].split('='); ausgabe.innerHTML += `Cookie ${i+1}) Name = ${a_guetzli[i][0]}, Wert = ${a_guetzli[i][1]}<br>`; } ausgabe.innerHTML += `<br>Es hat ${g.length} aktive Cookies`; } </script>
Cookie wird gesetzt auf 	Domain-Angabe 		Sichtbar für
example.com 			example.com 		example.com (nur Hauptdomain)
example.com 			shop.example.com 	❌ (ungültig)
shop.example.com 		example.com 		example.com + alle Unterdomains
shop.example.com 		shop.example.com 	shop.example.com (nur diese Unterdomain)
example.com 			fremde.com		❌ (ungültig)
Attribut	Same-Site	Cross-Site	Sicherheit	Verwendung
SameSite=None	✅ Ja		✅ Ja		Niedrig		Drittanbieter-Cookies 
								(eingebettete Inhalte)
Kein oder Lax	✅ Ja		❌ Nein		Mittel		Standard-Cookies 
								für die eigene Website
SameSite=Strict	✅ Ja 		❌ Nein		Hoch 		Sensible Cookies 
								(Authentifizierung)