Senin, 27 Agustus 2012

Cookies

·

Apa itu cookie?

Cookie itu serangkaian text yang disimpen di komputer oleh situs web yang elo kunjungin.
Biasanya sih cookie itu isinya cuman pengaturan atau referensi gitu lah, buat situs-situs web tertentu, misal referensi tentang bahasa elo atau lokasi (negara), dll. (jadi gak semua situs web nyimpen cookie, tergantung yang bikin web lah :P)
Nah pas elo (suatu hari/beberapa detik kemudian atau kapan-kapan) balik lagi ke situs itu, situs itu bakalan nyari cookie yang dikasih browser, terus ngambil informasi dari situ (kalo ada) buat keperluan (misal) tampilan/interface bahasa dll.
Gettooo... :P ,, kalo pengen lebih jelas, baca aja di support.mozilla.com/id/kb/Tentang Cookie (gw juga taunya dari situ XD)

JavaScript buat namPolin Cookie (document.cookie)

<script type="text/javascript">
<!--
  document.write('<p>'+document.cookie+'</p>');
//-->
</script>

Hasilnya


fbm_283995081642449=base_domain=.aingcreations.org; fbsr_283995081642449=rQWjHStG2Mzofc9enpGfKIS77gqECzGm-JrIMoiLS3I.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImNvZGUiOiIyLkFRQ1VuemRydXFXeDhpeUsuMzYwMC4xMzQ2MDcyNDAwLjEtMTAwMDAwNTU5MzU3NTU5fDN6X3pfS3FHR01WbzRTTDFodmJORWpPRG5uUSIsImlzc3VlZF9hdCI6MTM0NjA2NTk3MCwidXNlcl9pZCI6IjEwMDAwMDU1OTM1NzU1OSJ9; gbrlocoy=http%3A//profile.ak.fbcdn.net/hprofile-ak-ash2/623771_100000559357559_294817994_n.jpg

Dipisah-pisah menurut karakter pemisah ; (document.cookie.split(';'))

<script type="text/javascript">
<!--
function pisahinKuki(){
  var i;
  var eureyKuki  = document.cookie.split(';');
  for(i=0; i<eureyKuki.length; i++){
    document.write('<p><b>'+i+'=&gt;&gt;</b> '+eureyKuki[i]+'</p>');
  }
}

pisahinKuki();
//-->

</script>

Hasilnya


0=>> fbm_283995081642449=base_domain=.aingcreations.org
1=>> fbsr_283995081642449=rQWjHStG2Mzofc9enpGfKIS77gqECzGm-JrIMoiLS3I.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImNvZGUiOiIyLkFRQ1VuemRydXFXeDhpeUsuMzYwMC4xMzQ2MDcyNDAwLjEtMTAwMDAwNTU5MzU3NTU5fDN6X3pfS3FHR01WbzRTTDFodmJORWpPRG5uUSIsImlzc3VlZF9hdCI6MTM0NjA2NTk3MCwidXNlcl9pZCI6IjEwMDAwMDU1OTM1NzU1OSJ9
2=>> gbrlocoy=http%3A//profile.ak.fbcdn.net/hprofile-ak-ash2/623771_100000559357559_294817994_n.jpg

Dipisah-pisah nyaring nama sama value (substr dari indexOf('='))

<script type="text/javascript">
<!--
function pisahinNamaSamaValueKuki(){
  var i,x,y,z;
  var eureyKuki  = document.cookie.split(';');

  for(i=0; i<eureyKuki.length; i++){
    // jumlah karekter sebelum tanda =
    z = eureyKuki[i].indexOf('=');
    // karekter dari ke 0 sampai sebanyak z karakter (z=diatas)
    x = eureyKuki[i].substr(0,z);
    // karekter dari ke z+1 sampai sebanyak sisanya

    y = eureyKuki[i].substr(z+1);
    // ganti karakter ^ | $ yang ada di x (diatas) pake '' (''=kosong)
    x = x.replace(/^\s+|\s+$/g,'');

    document.write('<p>');
    document.write('<b>Nama:</b> '+x);
    document.write('<br/>');
    document.write('<b>Value:</b> '+y);
    document.write('</p>');
  }
}

pisahinNamaSamaValueKuki();
//-->

</script>

Hasilnya


Nama: fbm_283995081642449
Value: base_domain=.aingcreations.org
Nama: fbsr_283995081642449
Value: rQWjHStG2Mzofc9enpGfKIS77gqECzGm-JrIMoiLS3I.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImNvZGUiOiIyLkFRQ1VuemRydXFXeDhpeUsuMzYwMC4xMzQ2MDcyNDAwLjEtMTAwMDAwNTU5MzU3NTU5fDN6X3pfS3FHR01WbzRTTDFodmJORWpPRG5uUSIsImlzc3VlZF9hdCI6MTM0NjA2NTk3MCwidXNlcl9pZCI6IjEwMDAwMDU1OTM1NzU1OSJ9
Nama: gbrlocoy
Value: http%3A//profile.ak.fbcdn.net/hprofile-ak-ash2/623771_100000559357559_294817994_n.jpg

Create and Store a Cookie

Biar enak, sekarang kita langsung nyoba aja bikin cookie yang nyimpen informasi tentang Nama pengunjung (buat nyoba aja).
Jadi gini ceritanya:
Pas pertama orang ngunjungin blog/web page kita, kita tanya namanya, terus kita simpen namanya di Cookie.
Nah, pas besokannya/beberapa waktu kemudian dia balik lagi ke blog/web page kita, kita sambut dengan menyebut namaNya :P
First, we create a function that stores the name of the visitor in a cookie variable:
<script type="text/javascript">
<!--
function setKuki(namaKuki,value,hariBasi){
  var tglBasi=new Date();
  tglBasi.setDate(tglBasi.getDate() + hariBasi);
  var valueKuki=escape(value) + ((hariBasi==null) ? "" : "; expires="+tglBasi.toUTCString());

  document.cookie=namaKuki + "=" + valueKuki;
}
//-->
</script>
Then, we create another function that returns a specified cookie:
<script type="text/javascript">
<!--
function getKuki(namaKuki){
  var i,x,y,eureyKukis=document.cookie.split(";");

  for(i=0;i<eureyKukis.length;i++){
    x=eureyKukis[i].substr(0,eureyKukis[i].indexOf("="));
    y=eureyKukis[i].substr(eureyKukis[i].indexOf("=")+1);
    x=x.replace(/^\s+|\s+$/g,"");

    if (x==namaKuki){
      return unescape(y);
    }
  }
}
//-->

</script>
Last, we create the function that displays a welcome message if the cookie is set:
if the cookie is not set it will display a prompt box, asking for the name of the user, and stores the namelocoy cookie for 1 days, by calling the setKuki function
<script type="text/javascript">
<!--
function cekKuki(){
  var namaSiDia=getKuki("namelocoy");
  if(namaSiDia==null || namaSiDia==""){
    namaSiDia=prompt("Would You mind telling Me Your Name, Please?","");
    if(namaSiDia!=null && namaSiDia!=""){
      setKuki("namelocoy",namaSiDia,1);
    }
  }else{
    var welkomMesej = "Wadooh jurigan " + namaSiDia + ", apa kabar gan? :D\n";
        welkomMesej += "Seneng bisa ketemu lagi sama agan " +namaSiDia+ "\n\n";
        welkomMesej += "Silahkan gan muter-muter ampe mabok dah XD\n";
        welkomMesej += "monggo.. monggo..";
    alert(welkomMesej);
  }
}
//-->
</script>


Coba kalo dimodip digabungin antara Facebook User Id sama Ip address :) hmm lumayan..

0 komentar:

Posting Komentar

handapeunpost