About SESSION
This only about session, not about heart. :)
Udah ngaco gatau ngetik apa. Intinya selamat dataang (kembali) hehe
Kali ini aku mau bahas tentang SESSION yang ada di PHP.
Sebenernya SESSION ini gimana sih? Apa sama kayak SESSION yang ada di kelas?
Yuk kupas tentang SESSION ini.
SESSION
Biasanya, SESSION ini digunakan untuk keperluan autentifikasi user melalui login. Adapun idenya adalah apabila user sukses melakukan login, maka username ini akan disimpan dalam sebuah SESSION. Mengapa username ini harus disimpan ke dalam SESSION? dengan disimpannya username ke dalam SESSION sekaligus bisa digunakan untuk mencegah adanya penyusup yang masuk ke aplikasi tanpa melalui login. untuk mengecek ada tidaknya penyusup yang masuk ke aplikasi tanpa login, bisa hanya dengan mengecek SESSION nya. Jika penyusup tadi masuk ke aplikasi tanpa login, otomatis SESSION nya belum ada, karena SESSION baru ada ketika user login dengan sukses.
Menghapus Variabel SESSION
Kemudian, bagaimana cara menghapus variabel SESSION?Cara pertama, Anda akan langsung bisa menghapus SESSION bila kalian keluar dari browser (EXIT),
Cara kedua, gunakan perintah berikut ini pada script.
session_destroy();
Dengan perintah tersebut, maka semua variabel SESSION akan terhapus. Namun, bagaimana bila hanya ingin menghapus suatu variabel SESSION tertentu saja? Untuk hal ini, gunakan perintah
unset()
unset($_SESSION['nama session']);
Misalkan kita memiliki sebuah form sebagai berikut
<form method="post" action="submit.php"> Bilangan ke-1 <input type="text" name="bil1" /><br /> Bilangan ke-1 <input type="text" name="bil1" /><br />
<input type="submit" name="submit" value="Submit" />
</form>
Form di atas digunakan untuk memasukkan dua buah bilangan. Selanjutnya kita buat script untuk membaca kedua bilangan yang diinputkan tersebut
submit.php
<?php
$bil1 = $_POST['bil1'];
$bil2 = $_POST['bil2'];
echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />";
echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />";
echo "<a href='lanjut.php'>Klik di sini</a>"; ?>
Apabila kita telah memasukkan dua buah bilangan melalui form, kemudian mensubmitnya maka pada script submit.php akan memunculkan kedua bilangan tersebut dengan sukses.
Pada submit.php ini terdapat pula link menuju script lanjut.php. Dalam script lanjut.php ini, kita juga akan menampilkan kedua bilangan yang diinputkan sebelumnya.
lanjut.php
<?php
echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />";
echo "<a href='lanjut.php'>Klik di sini</a>";
?>
Apakah kedua bilangan yang diinputkan tadi masih bisa terbaca nilainya? Jawabannya adalah TIDAK. Kedua bilangan hanya bisa terbaca pada script submit.php saja, karena submit.php adalah halaman pertama setelah pemrosesan form.
Untuk mengatasi hal ini terdapat 2 solusi yang bisa digunakan, yaitu menggunakan GET method atau SESSION.
Apabila kita menggunakan GET method, maka caranya adalah menyisipkan parameter untuk kedua bilangan pada link menuju lanjut.php tersebut. Selanjutnya dalam lanjut.php, parameter kedua bilangan ini dibaca nilainya.
submit.php
<?php
$bil1 = $_POST['bil1'];
$bil2 = $_POST['bil2'];
echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />";
echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />";
echo "<a href='lanjut.php?bil1= ".$bil1."&bil2=".$bil2."'>Klik di sini</a>";
?>
lanjut.php
<?php
$bil1 = $_GET['bil1']; $bil2 = $_GET['bil2'];
echo "Anda memasukkan bilangan ke-1 : ".$bil1."<br />"; echo "Anda memasukkan bilangan ke-2 : ".$bil2."<br />";
?>
Bagaimana dengan menggunakan SESSION?
Dengan menggunakan SESSION, kita tidak perlu menuliskan nilai input dalam URL link. Nilai input ini nantinya akan disimpan dalam suatu variabel SESSION. Selama browser kita masih aktif (browser belum ditutup) atau sengaja dinonaktifkan (dihapus) SESSION nya, maka variabel SESSION ini masih terus aktif.
Nilai yang disimpan dalam variabel SESSION ini bisa dibaca atau dikenali di beberapa halaman script. Beda dengan variabel biasa. Kalau variabel biasa itu hanya dikenali pada halaman script tersebut saja.
Selanjutnya bagaimana cara menyimpan nilai ke dalam suatu variabel SESSION? Sebelum mulai menyimpan, kita harus mengaktifkan SESSION nya terlebih dahulu menggunakan perintah
session_start();
Setelah SESSION aktif, barulah kita bisa membuat variabel SESSION untuk menyimpan nilai. Berikut ini perintah untuk menyimpan sebuah nilai ke dalam variabel SESSION
$_SESSION['namaSession'] = value;
Nilai yang bisa disimpan dalam SESSION ini bisa berupa bilangan, array, karakter maupun string.
form |
Lanjut |
submit |
Hasil di browser |
1. Membuat form
2. Membuat submit1.php
3. Membuat layout1.php
4. Membuat layout.php
7. program dan isi link 3
0 komentar: