Cookie PHP

Cookie adalah sebuah file kecil yang ditanamkan oleh server ke dalam browser visitor. File kecil ini berisi data visitor dan digunakan oleh server untuk mengenali visitor.

Biasanya cookie digunakan untuk menyimpan username dan password sehingga visitor tidak perlu login setiap kali mengunjungi halaman web yang membutuhkan login. Selain itu cookie juga bisa digunakan untuk menyimpan data waktu kunjungan visitor maupun hal lainnya.

Cookie bekerja berdasarkan urutan sebagai berikut ini:

  1. Visitor mengunjungi sebuah halaman web.
  2. Server halaman web mengirimkan cookie dan menanamkan cookie ke dalam browser visitor.
  3. Saat visitor mengunjungi halaman web kembali, secara otomatis informasi cookie yang ada di browser visitor dikirimkan ke server.
  4. Server mengenali visitor berdasarkan informasi cookie yang dikirimkan oleh browser visitor.

Membuat cookie

Untuk membuat dan mengirimkan cookie ke browser visitor kamu bisa menggunakan setcookie() function.

Cookie akan dikirimkan ke dalam browser visitor saat visitor mengakses halaman web yang berisi code cookie.

Syntax

setcookie(name, value, expire, path, domain, secure, httponly);

Parameter name adalah nama dari cookie dan parameter value adalah isi dari cookie.

Parameter expire menentukan waktu cookie akan terhapus secara otomatis dari browser visitor. Jika diisi: time()+30*24*60*60 maka cookie akan terhapus secara otomatis dalam 30 hari (30 hari * 24 jam * 60 menit * 60 detik). Sedangkan jika parameter ini dikosongkan atau diisi dengan angka 0 maka cookie akan terhapus saat browser ditutup.

Hanya parameter name yang wajib diisi, selainnya adalah pilihan.

Catatan

  • Code setcookie() function harus ditulis sebelum tag <html>.

Berikut ini adalah contoh penggunaan setcookie() function:

Code PHP 1:

<?php
setcookie("nama", "bang juju", time()+30*24*60*60);
?>
<html>
<body>
</body>
</html>

Mengakses cookie

Saat visitor mengirimkan kembali informasi cookie ke server maka saat itu pula terbentuk $_COOKIE. Code $_COOKIE adalah sebuah superglobal yang memiliki bentuk associative array dengan key adalah nama cookie.

Untuk mengakses dan menampilkan informasi cookie yang sudah ditanamkan ke dalam browser visitor kita bisa menggunakan code $_COOKIE.

Code PHP 2:

<?php
echo $_COOKIE["nama"];
?>

Hasil code PHP 2:

bang juju

Code $_COOKIE["nama"] akan menghasilkan isi dari cookie yang bernama [nama].

Sebaiknya cookie tidak secara langsung diakses melainkan harus diperiksa dahulu keberadaanya menggunakan code isset() function. Lihat contoh berikut ini:

Code PHP 3:

<?php
if(isset($_COOKIE["nama"])) {
    echo "Hi " . $_COOKIE["nama"];
} else {
    echo "Welcome Guest!";
}
?>

Code isset() function digunakan untuk memeriksa apakah $_COOKIE["nama"] berisi data atau tidak. Code isset() function akan menghasilkan nilai boolean [true] jika sebuah variable tidak berisi nilai NULL.

Menghapus cookie

Salah satu cara terbaik menghapus cookie yang sudah ditanamkan ke dalam browser visitor adalah menggunakan setcookie() function dengan parameter expire yang diisi waktu lampau.

Code PHP 4:

<?php
setcookie("username", "", time()-3600);
?>

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>