Menggunakan Cookie pada PHP

Cookie atau kuki, mengijinkan webmaster menaruh informasi tentang pengunjung situs pada komputer mereka yang dapat diakses kembali saat kunjungan mereka berikutnya.

Salah satu fungsi paling umum dari penggunaan cookie adalah untuk menyimpan username dan password Anda pada komputer sehingga Anda tidak perlu login setiap kali mengakses suatu website.

Kuki juga dapat menyimpan hal-hal lainnya, seperti nama, kunjungan terakhir, isi keranjang belanja dan lain sebagainya.

Perbedaan utama antara kuki (cookie) dan sesi (session) adalah bahwa kuki tersimpan di komputer Anda, sedangkan sesi tidak. Namun, meski kuki tersimpan di komputer pengunjung, dan telah digunakan secara luas selama bertahun-tahun dan kebanyakan pengguna mengijinkannya, tapi tetap ada pengecualian. Cookie dapat dihapus oleh pengguna kapan saja mereka mau. Karena itu, jangan menggunakan cookie untuk menyimpan sesuatu yang sangat penting.

Untuk membuat cookie pada PHP, menggunakan perintah: setcookie(nama, nilai, kadaluarsa);

Contoh:

<?php
$Bulan = 2592000 + time(); 
//menambahkan 30 hari dari waktu saat ini
setcookie(ErudisiVisit, date("F jS - g:i a"), $Bulan);
?>

Kode di atas membuat cookie pada browser pengguna dengan nama “ErudisiVisit”.

Kuki tersebut menyimpan nilai dari tanggal saat ini dan mengatur masa kadaluarsa selama 30 hari (2592000 = 60 detik * 60 menit * 24 jam * 30 hari).

Sekarang mari kita mengambil cookie itu kembali:

<?php
  if(isset($_COOKIE['ErudisiVisit'])) {
  $terakhir = $_COOKIE['ErudisiVisit'];
  echo "Selamat datang kembali! <br> Kunjungan terakhir Anda ". $terakhir; 
  } else { 
    echo "Selamat Datang di Erudisi!"; 
    }
?>

Kode pertama, memeriksa apakah telah ada kuki tersimpan atau tidak. Jika ya, menampilkan pesan selamat datang kembali kepada pengunjung sekaligus memberi tahu kapan kunjungan terakhir mereka. Jika mereka mereka adalah pengunjung baru (sehingga tidak ada cookie sebelumnya), maka akan ditampilkan pesan selamat datang.


Tips: Bila Anda ingin memanggil cookie pada halaman yang sama di mana Anda berencana membuatnya, pastikan Anda mengambilnya terlebih dahulu (mengecek apakah sudah ada kuki atau belum), sebelum Anda menimpa cookie yang telah ada.


Untuk menghapus cookie, mudah saja, gunakan cookie juga, namun hanya diatur tanggal kadaluarsa ke waktu yang telah lewat. Ini biasanya digunakan ketika Anda ‘logout’ dari suatu website. Berikut contohnya:

<?php
$lampau = time() - 10;
// mengatur waktu ke 10 detik yang lalu 
setcookie(ErudisiVisit, date("F jS - g:i a"), $lampau);
?>

Ingat, cookies perlu diletakkan pada bagian header. Artinya ia harus dikirimkan sebelum semua HTML apapun lainnya dari suatu halaman, atau kuki tidak akan bekerja.