Kompetensi Dasar:
3.19 Menerapkan
aplikasi web statefull
4.19 Membuat aplikasi web statefull
APLIKASI WEB STATEFULL
PENGERTIAN
Stateless:
dimana satu permintaan saling independen terhadap permintaan lainnya, tidak ada
state(keadaan) yang dipertahankan.
Statefull:
kemampuan situs untuk mempertahankan state.
Aplikasi web statefull: aplikasi dimana informasi yang diberikan sebelumnya disimpan dan
mempengaruhi konten/informasi/data yang akan diberikan setelahnya.
Website
biasanya menggunakan protokol HTTP yang bersifat stateless, interaksi
antara request-response satu dengan request-response lainnya
bersifat independent/tidak saling berkaitan. Server HTTP tidak mengingat apa
yang terjadi pada interaksi request-response yang terjadi, tidak
menyimpan state yang berhubungan dengan client. Sistem memberikan respon kepada
user dengan langsung memberikan halaman baru.
Dengan
interaksi statefull, sebuah website dapat menyimpan keadaan user
walaupun komunikasi data pada jaringan tetap menggunakan HTTP.
CIRI-CIRI WEB STATEFULL
- Cookies Data yang menyimpan informasi.
- Session Menyimpan informasi tentang preferensi yang kita berikan, membuat suatu sesi yang unik untuk kita.
- Cache Suatu mekanisme dimana web document seperti HTML dan gambar disimpan sementara untuk mengurangi
- pemakaian bandwitd dan mempercepat loading.
Session merupakan hal yang
cukup penting dalam aplikasi berbasis web. Dengan session memungkinkan programmer menyimpan informasi user secara semi-permanen, artinya selama masa tertentu informasi akan tersimpan. Penyimpanan isi variabel session berada di server, jadi tidak bisa diakses
secara langsung oleh client.
Dalam aplikasi berbasis web, session banyak digunakan sebagai autentifikasi login. Dengan session memungkinkan programmer mengatur siapa saja yang bisa mengakses suatu halaman. Misalnya saja, untuk melihat halaman kotak surat pada email, kita harus login terlebih dahulu. Dalam proses login antara lain akan terjadi pembuatan suatu session yang akan dibawa oleh user di setiap halaman. Di halaman kotak surat, session tersebut akan diperiksa. Jika session benar maka user dipersilahkan membuka halaman kotak surat, namun jika salah maka user tidak bisa membuka halaman kotak surat dan biasanya akan diminta untuk login terlebih dahulu. Itulah sebabnya, user tidak bisa mengakses
halaman kotak surat secara langsung tanpa melakukan login.
Dalam penanganan session terdapat beberapa proses yang perlu diperhatikan :
- Proses pembuatan session
- Proses pemeriksaan session
- Proses penghapusan session
Bagaimana session itu sendiri dijalankan? Agar proses
penyimpanan dalam session berjalan, PHP melakukan beberapa hal berikut ini
:
- PHP meng-generate (membentuk) sebuah ID session.
- ID session ini merupakan sejumlah deret angka random yang unik untuk setiap user dan hampir tidak mungkin bisa ditebak. ID session disimpan oleh PHP di dalam variabel sistem PHP dengan nama PHPSESSID
- PHP menyimpan nilai yang akan Anda simpan dalam session di dalam file
- yang berada di server.
- Nama file tempat penyimpanan session tersebut sesuai (sama) dengan ID session. File disimpan dalam suatu direktori yang ditunjukkan oleh session.save_path dalam file konfigurasi php.ini.
- PHP melempar ID session ke setiap halaman.
- PHP mengambil nilai session dari file session untuk setiap halaman session.
.
Fungsi-fungsi dalam membangun session:
- session_start( ), untuk memulai session
- session_destroy( ), untuk mengakhiri session
- session_id( ), untuk mengambil atau menentukan identitas dari sebuah session
- session_register( ), untuk mendaftarkan variabel ke sebuah session
Contoh
Penerapan Session
1. Buat
file s1.php, s2.php, dan s3.php
2. Tulis
sintaks berikut:
CookieS
Merupakan
sepotong data yang disimpan pada hardisk lokal milik pengunjung dan digunakan
oleh halaman web dalam mengingat sesuatu informasi.
Cookies dapat digunakan untuk:
- Menyimpan nama pengunjung
- Merekam daftar barang yang ingin dibeli pengunjung
- Menimpan pilihan-pilihan yang diatur oleh pengunjung
- Menciptakan suatu sesi yang memungkinkan seseorang dapat masuk ke halaman-halaman lain tanpa perlu login kembali
JENIS COOKIES
- Session Cookies
- Persistent Cookies
- Third-Party Cookies
cara kerja
Web
server mengirim cookies ke client melalui judul HTTP, yang dikirim sebelum teks
HTML. Melalui judul inilah klien bisa mengetahui apakah ia perlu mengirim
cookies yang ada pada hardisk local ke web server atau tidak. Seperti halnya web
server, klien mengirim balik cookie ke web server melalui judul HTTP.
Di dalam judul HTTP cookie diatur melalui set-cookie( ) yang di dalamnya terdapat informasi nama cookie dan nilainya, batas kadaluarsa, path, domain, dan parameter keamanan. Informasi nama variabel dan nilai:
Informasi |
Keterangan |
Path
|
Digabungkan
dengan domain, nilai path menentukan folder pada web server yang dapat
menggunakan cookie. Jika informasi path dan URL yang diminta tidak cocok maka
klien tidak akan mengirim cookie.
Nilai bawaan path berupa “/” yang berarti bahwa cookie valid untuk semua
folder pada web server |
Domain
|
Menyatakan
domain(alamat) server yang mendefinisikan cookie. Klien tidak akan
mengirimkan cookie kalua tidak cocok dengan domain ini. Salah satu
pemanfaatannya adalah untuk berbagi cookie pada beberapa server. Misalnya
bila domain berisi “*situs.com” maka cookie akan dikenali baik pada situs
www1.situs.com maupun www2.situs.com |
Expires
|
Menyatakan
batas waktu kadaluarsa. Bawaanya cookie hanya berlaku sampai browser tertutup |
Secure
|
Untuk
menentukan pengiriman cookie ahnya kalua protocol HTTPS(HTTP yang aman)
digunakan |
1. Buat
file c1.php, c2.php, dan c3.php
2. Tulis
sintaks berikut:
Pada sintaks program di atas terdapat 2 buah cookie yang diciptakan yaitu cookie dengan nama “namapengguna” dan “namalengkap”. Pada baris ke 6 dan 7, untuk menciptakan cookie baru, digunakan fungsi setcookie(). Parameter pertama fungsi adalah nama cookie dan parameter kedua adalah nilainya. Kita juga dapat menambahkan parameter waktu cookie akan expired atau terhapus.
Pada sintaks program di atas merupakan contoh program pemeriksaan keberadaan cookie. Cookie di PHP tersimpan dalam predefined variabel $_COOKIE. untuk memeriksa keberadaannya, dapat digunakan fungsi isset()
Pada sintaks program di atas merupakan contoh program sederhana untuk menghapus variabel cookie. Pada dasarnya untuk menghapus cookie, dilakukan dengan membuat cookie tersebut expired.
3. Akses
file melalui localhost sehingga menghasilkan tampilan seperti gambar-gambar
berikut:
Kegiatan Belajar:
1. Praktikan contoh penerapan session dan cookie di atas!
2. Buat Laporan Kegiatan Belajar (sintaks dan output) kemudian unggah ke assignment pada Ms. teams!
Sumber:
Wijayanti Hanifah. 2019. Pemrograman Web Dan Perangkat Bergerak XII. Surakarta: Putra
Nugraha
semangat horrr
BalasHapusYoi
BalasHapusmakasih ya sangat membantu sekali
BalasHapus