Anda di halaman 1dari 16

PEMROGRAMAN

WEB 2
Cookie and Session
Apa itu Cookie?

Cookie sering digunakan untuk mengidentifikasi pengguna. Cookie adalah file kecil yang
ditanamkan server di komputer pengguna. Setiap kali komputer yang sama meminta
halaman dengan browser, itu akan mengirim cookie juga. Dengan PHP, Anda dapat
membuat dan mengambil nilai cookie.
Membuat Cookies

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

Hanya parameter “name” yang harus diisi, selebihnya adalah opsional


Membuat dan menggunakan nilai Cookies

Contoh berikut membuat cookie bernama “user" dengan value “09061002013_ali".


Cookie akan kedaluwarsa setelah 30 hari (86400 * 30). (note: 86400 adalah jumlah
detik selama 1 hari).

Kami kemudian mengambil nilai cookie “user" (menggunakan variabel global


$_COOKIE). Menggunakan fungsi isset () untuk mengetahui apakah cookie telah diset:
Membuat dan menggunakan nilai Cookies (continue...)

<?php
$cookie_name = "user";
$cookie_value = “09061002013_ali";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie atas nama '" . $cookie_name . "' belum diset!";
} else {
echo "Cookie '" . $cookie_name . "' telah diset!<br>";
echo "Value-nya adalah: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
Modifikasi nilai Cookies

Untuk melakukan modifikasi nilai cookie, silahkan definisikan ulang fungsi setcookie()
dengan parameter name yang sama (paramater “name” yang akan dimodifikasi
valuenya).
Menghapus Cookies

Untuk melakukan menghapus cookie, silahkan definisikan ulang parameter “expire”


menjadi waktu yang telah berlalu (pada contoh didefinisikan ulang parameter “expire”
menjadi 1 jam lalu) menggunakan fungsi setcookie() dengan parameter “name” yang
sama (paramater “name” yang berkorespondensi dengan cookie yang akan dihapus):

<?php
setcookie("user", "", time() - 3600);
?>
<html>
<body>
<?php
echo "Cookie 'user' telah dihapus.";
?>
</body>
</html>
Apa itu Session?

Ketika anda bekerja dengan suatu aplikasi, anda membukanya, melakukan beberapa
perubahan, dan kemudian anda menutupnya. Ini seperti Sesi. Komputer tahu siapa
anda. Ia tahu kapan anda memulai aplikasi dan kapan anda berakhir. Tetapi di internet
ada satu masalah: server web tidak tahu siapa anda atau apa yang anda lakukan,
karena protokol HTTP bersifat stateless.
Variabel session menyelesaikan masalah ini dengan menyimpan informasi pengguna
untuk digunakan di beberapa halaman (mis. Nama pengguna, warna favorit, dll sesuai
kebutuhan). Secara default, variabel session bertahan hingga pengguna menutup
browser.
Memulai Session pada PHP

Session dimulai dengan fungsi session_start ().


Variabel session diset dengan variabel global PHP: $_SESSION.
Fungsi session_start () harus ditulis pada awal dalam dokumen web(php) anda sebelum
ada tag HTML.
Sekarang, mari kita buat halaman baru yang disebut "demo_session1.php". Di halaman
ini, kami memulai sesi PHP baru dan menetapkan beberapa variabel sesi:
Memulai Session pada PHP (continue...)

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
$_SESSION[“nama"] = “09061002013_ali";
$_SESSION[“hewanfav"] = “kucing";
echo “Variabel Session telah diset.";
?>
</body>
</html>
Mendapatkan value dari variabel Session pada PHP

Selanjutnya, kita membuat halaman lain yang disebut "demo_session2.php". Dari


halaman ini, kita akan mengakses informasi sesi yang kita atur di halaman pertama
("demo_session1.php").
Perhatikan bahwa variabel session tidak diteruskan secara individual ke setiap halaman
baru, melainkan diambil dari sesi yang kami buka di awal setiap halaman (session_start
()).
Note: Sebagian besar penggunaan session menetapkan kunci-pengguna di komputer
pengguna yang terlihat seperti ini: 765487cf34ert8dede5a562e4f3a7e12. Kemudian,
ketika sebuah session dibuka di halaman lain, itu memindai komputer untuk mencari
kunci-pengguna. Jika ada kecocokan, maka session tersebut akan diakses, jika tidak,
maka akan dibuat session baru.
Juga perhatikan bahwa semua nilai variabel session disimpan dalam variabel
$_SESSION global:
Mendapatkan value dari variabel Session pada PHP
(continue...)

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
echo “Namamu adalah " . $_SESSION[“nama”] . ".<br>";
echo “Hewan favoritmu adalah " . $_SESSION[“hewanfav”] . ".";
?>
</body>
</html>
Memodifikasi variabel Session pada PHP

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
$_SESSION[“nama”] = “09061002015_wenny";
print_r($_SESSION);
?>
</body>
</html>
Destroy Session pada PHP

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// remove all session variables
session_unset();
// destroy the session
session_destroy();
?>
</body>
</html>
Tugas

Lanjutkan tugas pembuatan website KHS mahasiswa, jika kemarin hanya menyimpan
nilai (KHS) 1 mahasiswa sekarang tambahkan 1 mahasiswa lagi jadi kalian memiliki
data nilai matakuliah untuk 2 orang mahasiswa. Tambahkan fitur login dan
implementasikanlah cookie/session sehingga salah satu dari 2 mahasiswa yg login
hanya dapat melihat atau mengedit nilai dirinya saja.
TERIMA KASIH

Anda mungkin juga menyukai