Tere vaataja!

Põhimõtte seletus

Javaskripti abil on võimalik hoida kasutaja masinas küpsiseid ehk sõnesid, millel on nimi ja kehtivusaeg. Neid kasutatakse näiteks elektronkaubamajas kasutaja ostukorvis olevate asjade meelespidamisel, kuid nende abil saab teha ka näiteks ühe masina külastuskordade loenduri nagu siin. Kui masinast vastavanimelist küpsist ei leita, siis öeldakse, et ta on masinas esimest korda. Vastasel juhul loetakse küpsise väärtusest külastuse järjekorranumber ning järgmise korra tarvis suurendatakse seda ühe võrra.

Küpsise salvestab selline korraldus:
document.cookie=kypsiseNimi+"="+sisu+hoiuajasone;
mis ühe konkreetse näite puhul näeb välja
kylastusteArv=23; expires=Sun, 09 Jul 2000 17:01:44 GMT
Küpsiseid välja lugeda tuleb pikast sõnest, millest küpsise alguse leiab küpsise nime ja temale järgneva võrdusmärgi abil.

  var hoiupaevadeArv=100;
  var kypsiseNimi="kylastusteArv"; 
  function loeKypsis(){
   kypsisteSone=document.cookie;
   alg=kypsisteSone.indexOf(kypsiseNimi); //Küpsise algus
   if(alg<0)return "";                    //küpsis puudub
   ots=kypsisteSone.indexOf(" ", alg+1);  //küpsise ots
   if(ots<0)ots=kypsisteSone.length;      //viimane küpsis
   return kypsisteSone.substring(alg+kypsiseNimi.length+1, ots);
     //küpsise sisu hakkab pärast nimele järgnevat võrdusmärki
  }

  function kirjutaKypsis(sisu){
   hoiuaeg=new Date();                            //uus muutuja tüübist Date
   hoiuaeg.setTime((new Date()).getTime()+hoiupaevadeArv*24*60*60*1000);
           //määratakse lõpuaja väärtus millisekundites
   hoiuajasone="; expires="+hoiuaeg.toGMTString();     //muudetakse sõneks
   document.cookie=kypsiseNimi+"="+sisu+hoiuajasone;
  }


  Käivitumisel teksti sees käsud

    nr=loeKypsis();
    if(nr=="")nr=0;
    nr=eval(nr)+1;
    kirjutaKypsis(nr);
    document.writeln("Oled sellel lehel "+nr+". korda. ");