Minggu, 14 April 2019

BELAJAR PHP (PART 11) : Using Cookie


Using Cookie(s)




Assalamualaikum teman^^

Kita bahas tentang Cookie, yuk!

Sebelumnya, tau ga sih cookie yang dimaksud disini itu apa? Bukan cookie jajanan kering loh ya.

Jadi Cookies atau bisa disebut sebagai HTTP cookies, web cookies, atau browser cookies adalah data/informasi yang diciptakan oleh suatu website untuk disimpan di web browser, ketika user sedang menjelajahi website tersebut. Cookies yang telah disimpan pada browser bisa diambil untuk memberitahu website tentang aktivitas user pada waktu sebelumnya. Cookies diciptakan supaya website bisa mengetahui aktivitas yang telah dilakukan si user pada waktu sebelumnya. Aktifitas ini misalnya mengklik suatu tombol, login, atau   halaman mana yang telah dibuka oleh user pada bulan bahkan tahun lalu.

Cookies juga bisa saja menyimpan Informasi diri Anda seperti nama, alamat e-mail, alamat rumah atau kantor, nomor telepon yang dapat digunakan untuk mengidentifikasi atau mengontak Anda. Ini hanya bisa terjadi apabila Anda memberikan Informasi didalam sebuah situs Web.




Fungsi cookies :


1.     Membantu website untuk "mengingat" siapa kita dan mengatur preferences yang sesuai sehingga apabila user kembali mengunjungi website tersebut akan langsung dikenali.

2.     Menghilangkan kebutuhan untuk me-register ulang di web site tersebut saat mengakses lagi tersebut (site tertentu saja), cookies membantu proses login user ke dalam web server tersebut. 

3.     Memungkinkan website untuk menelusuri pola web surfing user dan mengetahui situs favorit yang sering dikunjunginya. 







Jenis Cookies


1.     Non persistent (session) cookies. Suatu cookies yang akan hilang sewaktu user menutup browser dan biasanya digunakan pada  'shopping carts' di toko belanja online untuk menelusuri item-item yang dibeli,

2.     Persistent cookies. Diatur oleh situs-situs portal, banner / media iklan situs dan lainnya yang ingin tahu ketika user kembali mengunjungi site mereka. (misal dengan cara memberikan opsi ”Remember Me” saat login). File file ini tersimpan di hardisk user.

Kedua tipe cookies ini menyimpan informasi mengenai URL atau domain name dari situs yang dikunjungi user dan beberapa kode yang mengindikasikan halaman apa saja yang sudah dikunjungi. Cookies dapat berisi informasi pribadi user, seperti nama dan alamat email, Akan tetapi dapat juga user memberikan informasi ke website tersebut melalui proses registrasi. Dengan kata lain, cookies tidak akan dapat "mencuri" nama dan alamat email kecuali diberikan oleh user. Namun demikian, ada kode tertentu (malicious code) yang dibuat misalnya dengan ActiveX control, yang dapat mengambil informasi dari komputer tanpa sepengetahuan user.



Apa perbedaan antara SESSION dan COOKIE? Dari sisi fungsi atau kegunaan, keduanya adalah sama, namun perbedaannya adalah jika SESSION value disimpan dalam server web sedangkan value COOKIE disimpan dalam komputer client.

Memang keduanya ada plus dan minusnya. Kelebihan SESSION adalah bahwa user tidak bisa menghapus value yang tersimpan kecuali dirinya sendiri, misal dengan menutup browser atau ketika dalam proses logout. Namun kelemahannya adalah ketika tiba-tiba jaringan internetnya putus setelah proses login. Bila jaringannya putus, maka otomatis SESSION akan terhapus sehingga apabila hal ini terjadi ketika kalian mengakses halaman web yang terdapat autentifikasi maka kalian diharuskan login kembali.

Sedangkan COOKIE, value disimpan di komputer client. Dengan demikian value tersebut tetap tersimpan meskipun jaringan internetnya putus atau dalam kondisi offline. Namun kelemahannya adalah value COOKIE tersebut bisa dihapus oleh orang lain yang juga menggunakan komputer tersebut, atau mungkin user komputer tersebut telah menge- set  bahwa  browsernya  tidak  bisa  menerima  COOKIE  sehingga  COOKIE  tidak  bisa tersimpan dalam komputer client.

Sehingga apabila ditanya, lebih baik pakai yang mana? COOKIE atau SESSION? Hal ini aku serahkan kepada kalian saja. Sebagai gambaran, bahwa sistem login Google Mail sepertinya  menggunakan  COOKIE,  demikian  pula  dengan  Wordpress.  Namun  banyak juga situs atau aplikasi yang menggunakan  SESSION untuk membuat sistem login ini. Aku sendiri lebih senang menggunakan SESSION



Cara Menyimpan Value Ke Dalam COOKIE


Untuk menyimpan value ke dalam COOKIE caranya adalah dengan memberikan perintah berikut ini:

setcookie("nama cookie", value, expired time);

Pada perintah di atas, parameter ‘nama cookie’ bisa diisi dengan sebarang nama. Nama COOKIE  ini  seperti  halnya  Anda  memberi  nama  pada  SESSION.  Parameter  ‘value’ nantinya diisi dengan value yang akan disimpan. Sedangkan parameter ‘expired time’ adalah lama waktu untuk mengatur masa berlaku COOKIE.



Catatan:

Nama COOKIE tidak boleh mengandung spasi Expired Time dihitung dalam satuan detik

Contoh:

<?php

$kata = "Saya sedang belajar COOKIE";

setcookie("mycookie", $kata, time()+3600);

?>

Script di atas akan menyimpan value berupa teks ‘Saya sedang belajar COOKIE’ ke dalam COOKIE.  Bila  script  di  atas  dijalankan,  maka  kita  bisa  lihat  valuenya  dalam  COOKIE. Apabila Anda menggunakan Firefox, maka cara melihat COOKIE nya adalah: 

1.       Klik TOOLS > OPTIONS

2.        Pilih menu tab PRIVACY

3.       Klik tombol SHOW COOKIES

4.       Kemudian dicari nama situsnya, karena Anda mencobanya melalui LOCALHOST maka LOCALHOST pada site name

5.       Lalu akan tampil seperti pada gambar berikut ini


Membaca Value Cookie


Setelah COOKIE tersimpan, selanjutnya kita bisa membaca valuenya. Untuk membaca value COOKIE, caranya adalah menggunakan perintah

$_COOKIE['nama cookie'];

Contoh:

<?php if isset($_COOKIE['mycookie'])

{

echo $_COOKIE['mycookie'];

} else echo "Cookie Tidak Ada"; ?>

Script di atas digunakan untuk menampilkan value dari COOKIE bernama ‘mycookie’ bila COOKIE tersebut ada (masih tersimpan dalam komputer), sedangkan bila sudah tidak ada maka tampilkan ‘Cookie Tidak Ada’.



Nah… Mungkin kalian berpikir, bagaimana bila terdapat nama COOKIE yang sama lebih dari  satu  yang  tersimpan  dalam  komputer?  Bila  nama  COOKIE  yang  sama  tersebut berasal dari situs yang sama, maka sifat timpa menimpa value seperti halnya dalam variabel akan terjadi.

Contoh:

script1.php

<?php $kata = "COOKIE 1"; setcookie("mycookie", $kata, time()+3600); ?>

script2.php

<?php $kata = "COOKIE 2"; setcookie("mycookie", $kata, time()+3600); ?>

Kedua  script  di  atas  akan  melakukan  proses penyimpanan  COOKIE  sebanyak  2  kali dengan value yang berbeda namun nama COOKIE nya sama. Jika kalian jalankan script di atas  dalam  LOCALHOST  (sebagai  nama  situsnya),  maka  value  COOKIE  pertama  akan ditimpa dengan COOKIE yang kedua. 

CONTOH:
Program PHP yang memanfaatkan "cookie", berikut contohnya

#LISTING PROGRAM#
<form method="POST" action="Cookie1a.php">
Asmanipun Panjenengan <input type="text" name="nama">
<input type="submit" name="submit" value="submit">
</form>
#LISTING PROGRAM#
<?php
$nama = $_POST["nama"];
if (isset($_COOKIE["nama"]))
{
    echo "Selamat Datang Kembali";
    echo $_COOKIE["nama"];
}
else
{
    setcookie('nama', $nama, time()+2000);
    echo $_COOKIE["nama"];
}
echo date("d-m-y h-i-s");
?>
 Dari program diatas dapat dihasilkan output seperti berikut, yang dalam form aku iss "yes", maka ketika dicek di cookie akan tampil tampilan seperti berikut. Valuenya berdasar inputan form diatas.
Untuk cek cookie di Internet Explorer, maka kamu bias melakukan langkah berikut.
1. Tekan f12, lalu pilih cookie, dan klik 2 kali file yang kamu buka.

Jika cara diatas tidak bias, maka kamu bias melakukan dengan cara berikut.

1. Klik setting (tanda di pojok kanan atas) lalu pilih opsi "Developer Tool" dan pilih "Debugger". Pilih cookie lalu klik 2 kali untuk file yang kamu buka di browser,


Well, semoga kalian mengerti tentang penjelasan singkat "Penggunaan Cookie" ini.
See U!
Previous Post
Next Post

post written by:

0 komentar: