Emely.Net Banner Exchange
Emely.Net Banner Exchange

 Home, Forum diskusi, Chatting, Download


JavaScript dan Cookies

Cookies merupakan topik yang cukup kontroversial sampai sekarang. Netscape memasukkannya dalam produk mereka. Cookie adalah suatu informasi kecil yang mana dimasukkan oleh halaman web kedalam mesin anda dan dapat mengambil kembali informasi tersebut jika anda mengunjungi halaman tersebut untuk kedua kalinya. Untuk melindungi privasi anda, cookie yang dimasukkan oleh suatu situs tidak dapat diakses oleh situs lain. Dengan menggunakan cookies anda dapat melacak telah berapa kali pengunjung dengan browser yang sama menggunjungi situs anda.

Untuk mempelajari bagaimana menggunakan cookies, anda dapat mengunjungi Netscape's Javascript Guide .

<script LANGUAGE="Javascript"> <!-- Hide from older browsers // Sets cookie values. Expiration date is optional function setCookie(name, value, expire) { strCookie = name + "=" + escape(value); if (expire) strCookie += "; expires=" + expire.toGMTString(); document.cookie = strCookie; } function getCookie(Name) { var search = Name + "=" if (document.cookie.length > 0) { // if there are any cookies offset = document.cookie.indexOf(search) if (offset != -1) { // if cookie exists offset += search.length // set index of beginning of value end = document.cookie.indexOf(";", offset) // set index of end of cookie value if (end == -1) end = document.cookie.length return unescape(document.cookie.substring(offset, end)) } } } // End hiding --> </script> Untuk menggunakan fungsi ini pada halaman anda, tambahkan kode diatas diantara tag <HEAD> dan </HEAD> pada dokumen HTML anda. Tetapi sebelum anda mulai mengunakan fungsi ini, adalah ide yang baik untuk mengerti bagaimana hal tersebut bekerja.

Suatu cookie pada dasarnya terdiri dari tiga bagian informasi yaitu : nama variable, nilai dan tanggal kadaluarsa cookies tersebut. Sebagai contoh, ketika seorang pengunjung mengunjungi homepage anda, anda dapat menanyakan namanya serta menyimpannya pada suatu cookie yang bernama 'visitor; dan menentukan tanggal kadaluarsanya untuk sejumlah bulan setelah tanggal sekarang.Anda dapat mengakses cookie dengan mengunakan metode objek document.cookie.

document.cookie = "visitor=yoda; expires=Sun, 01-Jan-01 00:00:00 GMT";

Baris diatas akan membuat suatu cookie dengan nama visitor dan mengisi nilainya dengan 'yoda' serta cookie ini akan aktif sampai tahun 2001. Bagian expires sebenarnya bersifat optional dan jika dibiarkan kosong, cookie akan kadaluarsa sesaat setelah jendela browser ditutup.

Fungsi setCookie() pada contoh JavaScript diatas akan melakukan hal yang sama, kecuali bahwa dia membuat string dari agumen yang dikirim dan memberikannya ke document.cookie. Baris kode adalah contoh pemakaian fungsi setCookie tersebut:

expireDate = new Date("January 01, 2000 00:00:00");
setCookie("visitor", "yoda", expireDate);

Tentu saja anda tidak ingin memberi nama kepada setiap pengunjung situs anda sebagai 'yoda' (kecuali anda adalah seorang pengemar berat film Star Wars ). Mari kita buat suatu form yang bernama visitor untuk menanyakan nama pengunjung dan menyimpannya sebagai cookie.

<SCRIPT LANGUAGE="Javascript">
   <!-- 
   function saveVisitor()
   {
     var visitorName = document.myForm.visitor.value;
     setCookie("visitor", visitorName);
   }
   // -->
</SCRIPT>

<FORM NAME="myForm">
   Please enter your name:
   <INPUT TYPE=TEXT NAME="visitor">
   <INPUT TYPE=BUTTON VALUE="Save" onClick="saveVisitor()">
</FORM>

Please enter your name:

Setelah sesaat anda menyimpan cookie, nilai dari document.cookie harus diubah sesuai dengannya. Untuk melihat nilai dari pengunjung, klik disini. Link tersebut memiliki kode
<A HREF="Javascript:alert(getCookie('visitor'))">

Contoh yang diberikan diatas agak panjang dan bagian yang paling sulit baru saja akan dimulai. Membaca kembali cookie adalah tidak sederhana seperti ketika membuat, karena jika anda menanyakan nilai dari  document.cookie, anda akan mendapatkan suatu string yang telah diformat yang berisi semua cookie. Untuk melihat apa yang saya maksud, perhatikan apa yang dihasilkan kode berikut:
alert(document.cookie);

Anda akan melihat cookie yang telah anda set sebelumnya, tetapi anda juga akan melihat cookie lain yang mana secara otomatis diset oleh halaman ini (Cookies ini digunakan oleh banner pada halaman ini untuk meyakinkan banner yang telah ditampilkan tidak akan ditampilkan terus-terusan). Melakukan pemisahan nilai untuk cookie tertentu dapat cukup melelahkan, tetapi untunglah kita telah memiliki fungsi getCookie() yang mana telah disediakan untuk kita. Kita telah melihat diatas bahwa memanggil getCookie("visitor") mengembalikan nilai dari cookie visitor.

Baca Juga:
Cookie Scripts dari The Javascript Source
Cookies and Forms dari Irt.org
Cookie tips dari Webreference


Dibuat  oleh hendra@indoprog.com
Medan - Sumatera Utara
Indonesia

1