cookies

Von: , Frage gestellt am Mo, 22. Jan 2001

hi all,
mal ne dumme frage. warum sind cookies eine "Eigenschaft" und kein "Objekt"?

thanx

8 Antworten zu dieser Frage

  1. Antwort von nach 12 Minuten 1 hilfreich
    Re: cookies

    hi all,
    mal ne dumme frage. warum sind cookies eine "Eigenschaft" und
    kein "Objekt"?

    thanx
    Hello,

    cookies sind in gewisser Hinsicht schon ein Objekt, denn Du kannst per

    if(window.document.cookies) {...}

    abfragen, ob der User bei seinem Browser die Speicherung von cookies zulaesst oder auch nicht.
    Allgemein wird in der OO-Entwicklung oefter gefragt, warum dieses oder jenes ein Attribut ist und keine Methode!!! Die Uebergaenge sind fliessend und es ist oft dem Entwickler ueberlassenen ob er dieses oder jenes besser als Attribute oder Methode verstanden haben moechte. Beispiel:

    string myClass::getMyAttribute()
    {
    return m_myAttribute;
    }

    Wenn man m_myAttribute als private deklariert, was ein guter Programmierer in der Regel macht, dann kann man nur ueber:

    theAttribute = myObject.getMyAttribute();

    darauf zugreifen. Ist das Attribute aber public z.B., dann geht auch:

    theAttribute = myObject.m_myAttribute;

    was aber wegen fehlender Datenkapselung schlechter Programmierstil ist. Klaro ???

    CU

    • Antwort von nach 16 Minuten hilfreich
      Re^2: cookies

      ja kapisch, das war ja mal ei machtwort, endlich jemand der mit gesagt hat das es fliessende übergänge gibt, denn so manches mal bin ich verwirrt, da ich nicht die zeit habe voll einzusteigen, jetzt hab ich endlich eine ausrede :)

      ne ist echt nett von dir, deine antworten sind die besten die ich kenne :)

      • Antwort von nach 21 Minuten hilfreich
        cookie übung

        hi du :)
        wenn ich diesen block eingebe

        <html>
        <head>
        <title>Untitled</title>
        </head>
        <body>
        setzen
        ausgeben
        </body>
        </html>

        dann erhalte ich nach dem klick auf "ausgeben" nicht nur den inhalt des Cookie, sondern auch noch ein undefined..was ist denn jetzt bitte der undefined? woher kommt der schon wieder? hast du ne ahnung?

        • Antwort von nach einer Stunde hilfreich
          Re: cookie übung

          Hallo,

          wenn Du ein Cookie setzt, dann musst Du mehr Infos uebergeben. Es ist so aehnlich wie bei ein ini-Datei unter Windows:

          [SectionsName]
          AbschnittsName=Value

          Bei einem Cookie ist die aktuelle URL analog-maessig die Section und was Du uebergeben hast ist praktisch nur der AbschnittsName, aber keinen Wert. Ist so aehnlich wie bei Attributen, z.B.:

          align="center"

          Deshalb ist Dein Value ber der Abfrage undefiniert, weil kein Wert hinterlegt wurde.

          Netscape speichert cookies in der Text-Datei cookies.txt. Nach meiner Erfahrung sind bis zu 18 cookies einer URL erlaubt, dann wird ueberschrieben. Zusaetzlich kann man bei Cookies ueber Semikolon getrennt die Lebensdauer in msec angeben.

          window.document.cookie = sectionStr + "=" + entryStr + "; expires=" + 1000*60*60*24*365 + ";";

          Der Cookie wird dann nach ca. 1 Jahr ungueltig und vom Browser geloescht. Gibst Du 0 an, dann wird der Cookie geloescht, wenn der Browser geschlossen wird.

          CU

          • Antwort von nach 2 Tagen 1 hilfreich
            Javascript Cookie Funktionenset...

            Hi.

            Es gibt schon ein "ultimatives" Cookie - Funktionenset. Ich habe es mal herauskopiert. Mehr braucht man nicht.

            function Get_Cookie(name) {
            var start = document.cookie.indexOf(name+"=");
            var len = start+name.length+1;
            if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
            if (start == -1) return null;
            var end = document.cookie.indexOf(";",len);
            if (end == -1) end = document.cookie.length;
            return unescape(document.cookie.substring(len,end));
            }
            function Set_Cookie(name,value,expires,path,domain,secure) {
            document.cookie = name + "=" +escape(value) +
            ( (expires) ? ";expires=" + expires.toGMTString() : "") +
            ( (path) ? ";path=" + path : "") + 
            ( (domain) ? ";domain=" + domain : "") +
            ( (secure) ? ";secure" : "");
            }
            function Delete_Cookie(name,path,domain) {
            if (Get_Cookie(name)) document.cookie = name + "=" +
            ( (path) ? ";path=" + path : "") +
            ( (domain) ? ";domain=" + domain : "") +
            ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
            }
            


            mfG,

            J.P.Jarolim

            • Antwort von nach 2 Tagen hilfreich
              Re: Javascript Cookie Funktionenset...

              WOW,

              sieht gut aus !!! :-)

              BYE

            • Antwort von nach 15 Tagen hilfreich
              Re: Javascript Cookie Funktionenset...

              hi,
              nochmals bzgl. expires: muss ich dies beim cookie setzen so angeben?

              <A HREF="javascript:Set_Cookie('timu','warhier',07-Jan-2001 10:01:00 GMT)">set cookie</A>

              da bekomm ich nämlich ne fehlermedlung, auch wenn ich die millisekunden pur angebe...

              thanx dear

            • Antwort von nach 26 Tagen hilfreich
              Re^2: Javascript Cookie Funktionenset...

              hi <A HREF="javascript:Set_Cookie('timu','warhier',07-Jan-2001
              10:01:00 GMT)">set cookie</A>
              expires in milisekunden angeben z.B. 5000 für 5 sekunden oder gar nix angeben für gar kein expire.

              Ausserdem glaube ich nicht, dass du einen komplexen Datums-String einfach so angeben kannst.

              mfG,

              J.P.Jarolim

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!