spawn: cookie: expire ja - aber bitte nicht gleich

Beitrag lesen

hallo

»»   jetzt = new Date();
»»   time = jetzt.getTime();
»»   alert(time);
»»   cookieex = time + 1000*60*60*24*5;
»»   alert(cookieex);

diese zeilen würde ich durch folgendes ersetzen:

jetzt = new Date();
  jetzt.setTime(jetzt.getTime() + 1000*60*60*24*5);
  cookieex = jetzt.toGMTString();
  alert(cookieex);

und zwar solltest du 1. keine variable namens time verwenden da es time in javascript schon gibt und 2. muss die cookie-zeit im gmt-format sein!

dann kommt da noch diese zeile:

»»       Cookieinhalt=Anrede+"#"+Vorname+"#"+Nachname+"#"+Firma+"#"+Abteilung+"#"+Strasse+"#"+Plz+"#"+Ort+"#"+Land+"#"+expires;

damit die zeit wann das cookie abläuft auch vom browser erkannt wird musst du als trennzeichen zwischen expires=x und dem rest des cookies ein strichpunkt setzen und kein gatterzeichen! also diese zeile folgendermassen:

Cookieinhalt=Anrede+"#"+Vorname+"#"+Nachname+"#"+Firma+"#"+Abteilung+"#"+Strasse+"#"+Plz+"#"+Ort+"#"+Land+";"+expires;

beachte aber auch da der browser das ablaufdatum jetzt nicht mehr als teil des cookies ansieht sondern erkennt und das cookie an sich jetzt nicht mehr #expires=x am ende enthält.
ich weiss jetzt nicht wie der teil des scriptes aussieht der das cookie ausliesst aber da solltest du auch noch drauf achten...
im zweifelsfall ersetzt die besagten stellen durch folgendes dann kann eigentlich gar nichts schief gehen:

jetzt = new Date();
  jetzt.setTime(jetzt.getTime() + 1000*60*60*24*5);
  time = "expires="+jetzt;
  cookieex = jetzt.toGMTString();
  alert(cookieex);

Cookieinhalt=Anrede+"#"+Vorname+"#"+Nachname+"#"+Firma+"#"+Abteilung+"#"+Strasse+"#"+Plz+"#"+Ort+"#"+Land+"#"+time+";"+expires;

übrigens hast du das mit dem falschen format der zeit nur deswegen nicht gemerkt da der browser diese zeit vorher ja als teil das cookies angesehen hat - würdest du jetzt das .toGMTString() weglassen würde das ganze nicht funktionieren.
als letztes will ich dich noch darauf hinweisen dass du unbedingt dafür sorgen solltest dass die variablen die nacher in das cookie geschrieben werden (Anrede - Land) kein istgleich, semikolon oder gatterzeichen enthalten (=;#)!
oder du ersetzt diese und andere steuerzeichen jedesmal vor dem schreiben in das cookie durch ihren hexadezimalwert - also mit escape() - und nachdem du beim auslesen des cookies wieder alles in variablen oder so ähnlich hast musst du diese dann natürlich mit unescape() wieder in ihren alten zustand umwandeln.

achso, ich sollte noch dazu sagen dass ich mich nur mit dem ms ie auskenne - von netscape hab ich keine ahnung aber soweit ich weiss gibts wenigstens bei cookies keine unterschiede. unter ms ie läufts aber auf jeden fall.

..... und der armen Braunschweig, der langsam die Zigaretten ausgehen, auf die Sprünge hilft.-

mensch... rauchen is soooo ungesund! lass das doch ma :)

cui