Mssmar: Cookies nach der Danke Seite löschen

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

  1. 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

    1. 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

      1. 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

        --
        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
        1. 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

          1. 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

            --
            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
            1. 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

              1. 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
                
                1. 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

                  1. 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

                    --
                    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
                    1. 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

                      1. 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

                        --
                        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
                        1. 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

                        2. 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

                          1. 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

                            --
                            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
                            1. 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

                              1. 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.

                                1. 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

                                  1. 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

                      2. 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