Session dan Cookies pada Aplikasi Statefull Stateful Application Stateful Application adalah suatu model aplikasi yang menggunakan penyimpanan (Session, dsb), artinya setiap transaksi yang dilakukan akan diingat, dan akan berpengaruh kepada transaksi yang akan dilakukan selanjutnya. cara kerja stateful aplikasi adalah menyimpan data anda diserver, seperti username dan password, lalu menggunakannya untuk terhubung kepada client. stateful application akan memberikan respon sesuai dengan permintaan client sampai client tersebut logout. A. Cookie Cookies atau bisa isebut HTTP cookies, web cookies, atau browser cookies adalah data atau 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 aktifitas user pada waktu sebelumnya. Cookies mempunyai umur, artinya adalah setiap data yang kita simpan dalam komputer user suatu saat bisa hilang atau musnah. Ini dikarenakan bahwa cookie mempunyai umur atau masa disimpan dalam komputer user. Fungsi cookies Menyimpan username dan password login agar pengguna tidak selalu harus mengisikannya pada saat membuka page (halaman web). Biasanya akan muncul chechbox "Remember Me" atau "Ingat Saya Selalu" yang terdapat pada bagian bawah box login. Menciptakan suatu sesi yang memungkinkan seseorang dapat masuk ke halaman-halaman lain tanpa perlu melakukan login kembali. Untuk mengetahui apakah pengunjung pernah datang atau belum ke halaman yang sedang dibuka (seperti yang digunakan pada hit counter /penghitung jumlah pengunjung pada blog). B. Session Session adalah salah satu fasilitas yang ada pada PHP yang digunakan untuk menyimpan data sementara ke dalam variabel (variabel session) sehinga data tadi dapat di akses oleh client selama variabel session tadi tidak di kosongkan atau dihilangkan. Nilai variabel di dalam session di simpan di sisi server (web server). Berbeda dengan cookies yang nilai variabelnya disimpan di sisi client (browser). Jadi session relatif lebih aman digunakan untuk menyimpan variabel nilai yang bersifat rahasia seperti username dan password pada saat login. Session diciptakan pada saat2 tertentu dari kunjungan anda ke website (contohnya pada saat login), dan dihapus pada saat tertentu juga (saat logout contohnya).Kegunaan session diantaranya untuk menyimpan informasi login yang berlaku hanya dalam satu sesi dan menyimpan catatan order barang dalam sistem e-commerce/transaksi online. 1. Proses Pembuatan Cookies (Contoh) $value = “A-Zoel”; $value2 =”Zulkarnaen NS”; setcookie(“username”, $value ); setcookie(“NamaLengkap”,$value2, time()+3600;//Expire in 1 hour 2. Proses Pemeriksaan Cookies (Contoh) If (isser($_COOKIE[‘username’])){ Echo “<h1> Cookie username ada isinya “ . $_COOKIE[‘username’] . “</h1>; }Else{ Echo “<h1> Cookie yang bernama username TIDAK ADA </h1>”; } 3. Proses Penghapusan Cookies (Contoh) setcookie(“username”,””,”time()-3600); setcookie(“NamaLengkap”,””,time ()-3600); 4. Proses Pembuatan Session (Contoh) Session_start(); //perintah ini harus ada pada setiap halaman yang berhubungan dengan session $_SESSION[‘sesLogin’]=$user; 5. Proses Pemeriksaan Cookies (Contoh) <?php session_start(); if(isset($_SESSION[‘sesLogin’])) { echo”<h1>Selamat Datang” . $_SESSION[‘sesLogin’] . “</h1>”; echo”<h2>Halaman ini hanya bisa diakses jika anda sudah login</h2>”; echo “<h2>Klik <a href=’session03.php’>disini (session03.php)</a> untuk logout</h2>”; } ?> 6. Proses Penghapusan Cookies (Contoh) <?php Session_start(); If(isset($_SESSION[‘sesLogin’])){ Unset($_SESSION); Session_destroy(); Echo”<h1>Anda Sudah berhasil LOGOUT</h1>”; Echo”<h2>Klik <a href=’session01.php’>disni</a>untuk LOGIN kembali</h2>”; Echo”<h2>Anda sekarang tidak bisa masuk ke halaman <a href =’session02.php’> session02.php</a> Lagi</h2>”; } ?>