|
Ein Cookie (amer. = Keks) ist eine Datei, die JavaScript auf den Anwenderrechner schreiben kann. Wohin, bestimmt der Browser des Anwenders. Cookies sind in ihrem Umfang begrenzt und können nur Variablenwerte speichern. Ausführbaren Code, der irgendwelchen Unsinn anstellen könnte, können sie nicht enthalten. Es gibt eine Reihe von sinnvollen Anwendungen. Bei allen Cookie-Anwendungen muß man wissen, daß Browser auf Wunsch die Annahme von Cookies verweigern können. Viele User nutzen diese Möglichkeit. Cookie schreiben Je nach Anlaß wird ein Cookie irgendwo auf einerHTML-Seite aktiviert werden, entweder aus einem Formularheraus oder automatisch beim Anzeigen der Seite.
Zum Schreiben oder Lesen dient stets das Schlüsselwort"cookie". Beim Schreiben gehen die Browser unterschiedlichvor. Bei Netscape wird eine Datei "cookies.txt" angelegt,die zeilenweise organisiert ist und neben einem AblaufdatumEinträge der Art "Bezeichner Wert" enthält. DerExplorer dagegen schreibt eine Textdatei, deren Name ausder URL des Senders gebildet wird. Beide registrieren nichtden Namen der aufrufenden Seite sondern den des Ordners,in dem sie sich befinden.
Es ist empfehlenswert, die Routine zum Schreiben eines Cookiesals JavaScript-Funktion im Head zu definieren.
Der Code enthält hier im Beispiel einen Werteintragund denjenigen der Ablaufzeit. Anzugeben ist mit "Dauer"die Gültigkeitsdauer in Tagen:
<script language="JavaScript">
function CookieSetz(Bezeichner,Wert,Dauer)
{
jetzt=new Date();
Auszeit=new Date(jetzt.getTime()+Dauer*86400000);
document.cookie=Bezeichner+"="+Wert+";expires="+Auszeit.toGMTString()+";";
}
</script> |
Wenn beim Drücken der Taste nichts geschieht, überprüfen
Sie bitte die Sicherheitseinstellungen Ihres Browsers. Cookies
müssen natürlich (wenigstens zum Testen) "akzeptiert"
werden.
Cookie lesen
Die folgende Funktion liest ein Cookie. Wenn von
der Seite aus schon ein Cookie geschrieben wurde, wird dessen
Wert ermittelt. Wenn kein Cookie geschrieben wurde, ist
der Rückgabewert leer.
Mit der Abfrage if(document.cookie) ermittelt die Funktion,
ob bereits ein Cookie vorhanden ist. Die Ermittlung von
Wertstart und Wertende im ersten Codebeispiel sichert, daß
nur der Wert, aber nicht der Bezeichner zurückgemeldet
wird. Diese Auswahl kann aber genausogut am ausgelesenen
Wert des kompletten Cookies geschehen, siehe 2. Codevorschlag.
<script language="JavaScript">
function CookieLesen()
{
Wert = "";
if(document.cookie)
{
Wertstart = document.cookie.indexOf("=")
+ 1;
Wertende = document.cookie.indexOf(";");
if(Wertende == -1)
Wertende = document.cookie.length;
Wert = document.cookie.substring(Wertstart,Wertende);
}
return Wert;
}
</script>
<script language="JavaScript">
function CookieLesen()
{
Wert = "";
if(document.cookie)
{
Wert = document.cookie;
Wert = Wert.slice(Wert.indexOf("=")+1,Wert.length);
}
return Wert;
}
</script>
|
Cookies nutzen
|
|
|