Cookies dalam PHP

Kegunaan COOKIES hampir sama dengan session, yaitu untuk menyimpan data tertentu. Bedanya, COOKIES disimpan oleh browser dan bisa ditentukan kapan batas waktu penyimpanannya sebelum dihapus secara otomatis. COOKIES bisa diakses dari variabel berupa associative array dengan nama $_COOKIES yang bisa ditambahkan key-nya.

Jika session biasa digunakan untuk "login", maka cookies biasanya digunakan untuk menyimpan data tertentu dari pengguna sebelum pengguna selesai menggunakan fitur tertentu. Cookies juga kadang digunakan untuk menyimpan halaman yang terakhir diakses oleh browser atau untuk menyimpan produk yang akan dipesan.

<?PHP
    if(isset($_COOKIE['dataku'])){
        echo("data anda adalah ".$_COOKIE['dataku']);
        setcookie('dataku', "", time()-3600);
    }else{
        echo("simpan cookie");
        setcookie("dataku", "Nama", time()+3600);
    }
?>


Perhatikan function setcookie!

Function tersebut digunakan untuk meminta browser menyimpan cookie hingga waktu tertentu. Parameter pertama dalam function setcookie adalah nama cookie, sedangkan parameter keduanya adalah nilai dari cookie tersebut. Pada parameter ketiga kita bisa menggunakan function time() untuk mendapatkan waktu saat ini berdasarkan selisih dengan tanggal default/bawaan dari komputer.

Jika kita ingin menyimpan cookie selama satu detik, cukup ketik "time()+1". Jika ingin menyimpan selama dua detik parameter ketiganya adalah "time()+2". Sedangkan jika ingin menghapus cookie, maka parameternya diganti dengan waktu di masa lalu, yang nilainya bisa berupa "time-1" dengan angka satu bisa diganti dengan berapapun

Selanjutnya, perhatikan function isset!

Function isset berguna untuk memastikan apakah suatu variabel sudah dideklarasikan atau belum. Jika suatu variabel yang dicek sudah punya nilai, isset akan mengembalikan nilai true dan melanjutkan script sesuai perintah yang ada, sebaliknya isset akan mengembalikan nilai false jika variabel belum dideklarasikan.

Sekarang coba jalankan! Setelah melihat hasilnya, jalankan script untuk kedua kalinya atau reload halamannya.