cim: COOKIES - MEHRERE WERTE IN EIN COOKIE

HALLO!

Habe folgendes Problem, möchte in ein Cookie mehere Werte speichern.
zB. Variable1=Wert1 Variable2=Wert2 Variable2=Wert2 usw.
Beim Auslesen werden allerdings die Einträge nicht unterscheiden, d.h. als ersten Wert bekomme ich immer Wert1 Variable2=Wert2 Variable2=Wert2 usw.

Wie kann ich mehrere Werte in ein Cookie Schreiben, um sie wieder richtig auslesen zu können?

  1. Hi,

    HALLO!

    ja, aber bitte schrei nicht so. Auch nicht im Subject.

    Habe folgendes Problem, möchte in ein Cookie mehere Werte speichern.
    zB. Variable1=Wert1 Variable2=Wert2 Variable2=Wert2 usw.
    Beim Auslesen werden allerdings die Einträge nicht unterscheiden, d.h. als ersten Wert bekomme ich immer Wert1 Variable2=Wert2 Variable2=Wert2 usw.

    Korrekt.

    Wie kann ich mehrere Werte in ein Cookie Schreiben, um sie wieder richtig auslesen zu können?

    _Ein_ Cookie besteht aus _einem_ "Name=Wert"-Paar. Wenn Du mehrere Werte brauchst, mußt Du auch mehrere Cookies setzen. Oder Du splittest die Werte selbst auf, nachdem Du den Cookie etwa als "Cookiename=Var1:Wert1;Var2:Wert2;Var3:Wert3" gespeichert hast.

    Ich schlage vor, letztere Methode zu benutzen, zumal die Zahl der Cookies pro Domain begrenzt ist.

    Cheatah

    1. Hi !

      Ein bescheidenes Beispiel von mir, wie ich mal mehrere Werte in einem Cookie gespeichert habe,
      um Formularfelder wieder mit Werten zu füllen. (Ich hab als Trenner $ benutzt, ist vielleicht nicht das
      beste Zeichen aber es tut seinen Dienst). Geht bestimmt auch komfortabler zu programmieren.

      Knud

      function init() {
         if (document.cookie) {
          Wert = document.cookie;
          while (Wert.length > 0) {
           numbis = Wert.indexOf("=");
           if (numbis == -1) numbis = Wert.length;
           Wertname = Wert.substring(0,numbis);
           numstart = numbis+1;
           numende = Wert.indexOf("$");
           if (numende == -1) numende = Wert.length;
           Wertvalue = Wert.substring(numstart,numende);
          
           NeuWert = Wert.substring(numende+2,Wert.length);
           Wert = NeuWert;
          
           document.form1[Wertname].value = Wertvalue;
           }
         }
        }

      function save_cookie() {
         var Verfall = 1000*60*60*24*365;
          var jetzt = new Date();
          var Auszeit = new Date(jetzt.getTime() + Verfall);
         var Wert = "firma="+document.form1.firma.value+"$ ";
         Wert = Wert + "partner="+document.form1.partner.value+"$ ";
         Wert = Wert + "strasse="+document.form1.strasse.value+"$ ";
         Wert = Wert + "plz="+document.form1.plz.value+"$ ";
         Wert = Wert + "ort="+document.form1.ort.value+"$ ";
         Wert = Wert + "land="+document.form1.land.value+"$ ";
         Wert = Wert + "tel="+document.form1.tel.value+"$ ";
         Wert = Wert + "fax="+document.form1.fax.value+"$ ";
         Wert = Wert + "mailto="+document.form1.mailto.value+"$ ";
         document.cookie = Wert+"; expires="+Auszeit.toGMTString()+";";
        }