Cookies nach der Danke Seite löschen
Mssmar
- javascript
Ich möchte Cookies nach dem Senden eins Formulars (Danke Seite) löschen.
Die Sind Cookies, die ich vorher per set_cookie() eingesetzt habe.
Mit dieser Funktion lässt bekomme ich es irgendwie nicht hin:
http://www.galileocomputing.de/openbook/javascript/javascript11.htm#Xxx585222
Ich würde aber auch gerne eure Meinung dazu wissen, wann macht es überhaupt dann Sinn, Cookies, die man benutzt für Datenübertragung über ein Formular zu löschen.
Direkt nach dem Senden des Formulars oder nicht?
Für jeden Tipp, bin ich dankbar.
Gruß
Mssmar
hi,
Ich würde aber auch gerne eure Meinung dazu wissen, wann macht es überhaupt dann Sinn, Cookies, die man benutzt für Datenübertragung über ein Formular zu löschen.
Cookies für eine Formularverarbeitung zu nutzen macht Sinn, wenn es dem Benutzer dient. Z.B. dahingehend, dass er seinen Namen und die eMail-Adresse bei späteren Aufrufen des Forumlars bereits vorfindet.
Direkt nach dem Senden des Formulars oder nicht?
Daher macht das Löschen direkt nach dem Senden des Formulars keinen Sinn. Und letztendlich entscheidet der Besucher einer Seite, ob er Cookies annimmt oder nicht und wann der die Angenommenen löscht.
Hotte
hi,
Cookies für eine Formularverarbeitung zu nutzen macht Sinn, wenn es dem Benutzer dient. Z.B. dahingehend, dass er seinen Namen und die eMail-Adresse bei späteren Aufrufen des Forumlars bereits vorfindet.
Die persönlichen daten des Users speichere ich nicht in den Cookies...die werden über den Request geholt.
Was ich in den Cookies speichere, sind andere Informationen von einigen Checkboxen, die der User aktivieren kann
Daher macht das Löschen direkt nach dem Senden des Formulars keinen Sinn.
Hier meinte ich, dass wenn der User z.B. mit der Auswahl von Daten/Checkboxen
fertig oder durch ist und das Formular schickt, dass ich dann den Cookie, wo diese Infos gespeichert sind lösche.
Aber ich glaube, dass ich deiner Meinung bin, da diese Daten vorhanden bleiben müssen, bis der User den Browser schließt.
Aber es ist mir aufgefallen, dass es trotz Schließen des Browsers und neu aufrufen, dass die Cookies immer noch nicht gelöscht sind.
Woran könnte das legen?
Gruß
Mssmar
Hi,
Was ich in den Cookies speichere, sind andere Informationen von einigen Checkboxen, die der User aktivieren kann
dafür gibt es bessere Mittel, z.B. Sessions oder - zur Not - <input type="hidden"/>.
Aber es ist mir aufgefallen, dass es trotz Schließen des Browsers und neu aufrufen, dass die Cookies immer noch nicht gelöscht sind.
Woran könnte das legen?
Mit welchen Informationen (über Name und Wert hinaus) setzt Du die Dinger?
Cheatah
Hi Cheatah,
dafür gibt es bessere Mittel, z.B. Sessions oder - zur Not - <input type="hidden"/>.
Das ist völlig richtig...aber es ist/war mir ambißel aufwändig, und offen gesagt in einigen Fällen schwierig, es mit Session oder Request zu realisieren...Das ganze wird mit JSP gemacht.
Es geht eigentlich um eine Pager-Funktion.
Mit welchen Informationen (über Name und Wert hinaus) setzt Du die Dinger?
Sorry, aber ich verstehe nicht was Du genau sagen willst.
Gruß
Mssmar
Hi,
Mit welchen Informationen (über Name und Wert hinaus) setzt Du die Dinger?
Sorry, aber ich verstehe nicht was Du genau sagen willst.
Cookies erlauben neben Name und Wert noch diverse andere Angaben, z.B. Domain, Pfadbereich und Expire-Datum. Wie lauten Deine entsprechenden Angaben?
Cheatah
Hi,
Cookies erlauben neben Name und Wert noch diverse andere Angaben, z.B. Domain, Pfadbereich und Expire-Datum. Wie lauten Deine entsprechenden Angaben?
ich habe die folgende Funktion versucht zu verwenden:http://www.galileocomputing.de/openbook/javascript/javascript11.htm#Xxx585222
function eraseCookie(name, domain, path){
var cook="name=; expires=Thu, 01-Jan-70 00:00:01 GMT"
cook += (domain) ? "domain="+domain : ""
cook += (path) ? "path="+path : ""
document.cookie = cook
}
Also ich habe für den Namen: 'NameDesCookies', http://localhost für den Domain, und /index.jsp für den Path, eingegeben.
Ich habe die Funktion über den EventHanlder: onLoad() einmal im Body-Tag und einmal ganz unten am Ende der Seite aufgerufen .
Nichts ist passiert...der Cookie ist immer da.
Gruß
Mssmar
Hi,
ich habe die folgende Funktion versucht zu verwenden:http://www.galileocomputing.de/openbook/javascript/javascript11.htm#Xxx585222
die ist fehlerhaft:
function eraseCookie(name, domain, path){
var cook="name=; expires=Thu, 01-Jan-70 00:00:01 GMT"
Es wird versucht, einen Cookie namens "name" zu löschen, der übergebene Name wird ignoriert.
Cheatah
--
X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes
Hi,
Es wird versucht, einen Cookie namens "name" zu löschen, der übergebene Name wird ignoriert.
Was wäre dann die Lösung? ;-( Irgendwie muss ja den Namen des zu löschenden
Cookies eingeben oder?
Danke und gruß
Mssmar
Hi,
Es wird versucht, einen Cookie namens "name" zu löschen, der übergebene Name wird ignoriert.
Was wäre dann die Lösung?
korrigiere das Script, so dass der übergebene Name verwendet wird.
Cheatah
Hi,
korrigiere das Script, so dass der übergebene Name verwendet wird.
das muss es so sein.
function eraseCookie(name, domain, path){
var cook="name=";
cook += name;
cook +="; expires=Thu, 01-Jan-70 00:00:01 GMT"
cook += (domain) ? "domain=" + domain : ""
cook += (path) ? "path=" + path : ""
document.cookie = cook
}
Gruß
Mssmar
Hi,
> function eraseCookie(name, domain, path){
> var cook="name=";
> cook += name;
hiermit setzt Du einen Cookie, dessen Name "name" lautet und der als Wert den übergebenen Namen hat. Nächster Versuch, bitte ;-)
Cheatah
Hi,
hiermit setzt Du einen Cookie, dessen Name "name" lautet und der als Wert den übergebenen Namen hat.
hmm, wie meinst Du das ;-)? ich rufe danach die Funktion folgendermaßen auf:
<script>
eraseCookie('yyyyy', 'http://localhost', 'index.jsp');
</script>
und mit:
<script>alert(document.cookie);</script>
bekomme den richtigen Namen des eigegebenen Cookies aus und zwar: "yyyyy"
Gruß
Mssmar
Hi,
und mit:
<script>
function eraseCookie(name, domain, path){
....
document.cookie = cook
alert(cook);
}
</script>
bekomme ich:
nam=yyyyy; expires=Thu, 01-Jan-70 00:00:01 GMT domain=http://localhost path=index.jsp
Danke und Gruß
Messmar
Hi,
[...]
bekomme ich:
nam=yyyyy; expires=Thu, 01-Jan-70 00:00:01 GMT domain=http://localhost path=index.jsp
"name=yyyyy; ...", nehme ich an. Wenn der Name "holzschuh" lautet, bekommst Du allerdings auch "name=yyyyy; ..." - richtig wäre "holzschuh=; ...".
Cheatah
Moin,
"name=yyyyy; ...", nehme ich an. Wenn der Name "holzschuh" lautet, bekommst Du allerdings auch "name=yyyyy; ..." - richtig wäre "holzschuh=; ...".
Nö, ich muss dich leider wedersprehcen...bei dem Aufruf hier:
<script>eraseCookie('schlaumaier', 'http:localhost', 'index.jsp');</script>
bekomme ich:
nam=schlaumaier; expires=Thu, 01-Jan-70 00:00:01 GMT domain=http://localhost path=index.jsp
Gruß
Mssmar
bekomme ich:
nam=schlaumaier; expires=Thu, 01-Jan-70 00:00:01 GMT domain=http://localhost path=index.jsp
Du scheinst nicht zu verstehen, der Name des Cookies ist hier 'nam' und der Wert ist 'schlaumeier', du willst also das cookie mit dem Namen 'nam' löschen?
Struppi.
Hi,
Du scheinst nicht zu verstehen, der Name des Cookies ist hier 'nam' und der Wert ist 'schlaumeier', du willst also das cookie mit dem Namen 'nam' löschen?
Danke schon Mal ;-) Mag sein, dass ich es verweschsle...
ich check es Mal ab.
Gruß
Mssmar
Hi,
Du scheinst nicht zu verstehen, der Name des Cookies ist hier 'nam' und der Wert ist 'schlaumeier', du willst also das cookie mit dem Namen 'nam' löschen?
...bin erst jetzt dazu gekommen den schnipßel Code genauer abzuchecken.
Tja, peinlich ;-(
...
var cook= name;
cook +="; expires=Thu, 01-Jan-70 00:00:01 GMT"
...
Vielen Dank an alle und Gruß
Mssmar
Hallo,
function eraseCookie(name, domain, path){
var cook="name=";
cook += name;
Cheatah hat es schon dreimal gesagt. Du willst einen String "bla=" haben, wobei bla austauschbar ist und in einer String-Variablen steckt. Wie setzt du also einen String aus dieser Variable und dem festen String "=" zusammen? Richtig, mit dem Operator »+«. Heraus kommt:
variable + "="
Tadaa! Jetzt kannst du das Resultate in einer Variable speichern und noch weitere Teilstrings mit expires usw. hinten dranhängen. Wie das geht, hast du ja schon längst herausbekommen.
Vielleicht liest du dir auch mal http://de.selfhtml.org/javascript/objekte/document.htm#cookie durch.
Mathias