seSSion
Hallo sobat JoyBoy ✋
Kembali lagi di JoyBoy Code, dimana tempat belajar pengcodingan yang selalu update tiap minggunya 👌
Kali ini kita akan membahas tentang Session dalam bahasa PHP, dan tentunya kita akan mempraktekkan langsung juga 👌
Apa itu Session ?
session merupakan data yang disimpan dalam suatu server yang dapat digunakan secara global di server tersebut, dimana data tersebut spesifik merujuk ke user/client tertentu, contoh penggunaan session adalah ketika user telah login di halaman tertentu, maka ketika membuka halaman lain, php akan mengingat bahwa user tersebut telah login
Memulai Session :
session_start();
Perintah Untuk Menyimpan Nilai pada Variabel Session :
$_SESSION['namaSession'] = value;
Apa itu Session ?
session merupakan data yang disimpan dalam suatu server yang dapat digunakan secara global di server tersebut, dimana data tersebut spesifik merujuk ke user/client tertentu, contoh penggunaan session adalah ketika user telah login di halaman tertentu, maka ketika membuka halaman lain, php akan mengingat bahwa user tersebut telah login
Memulai Session :
session_start();
Perintah Untuk Menyimpan Nilai pada Variabel Session :
$_SESSION['namaSession'] = value;
Nilai yang bisa
disimpan dalam SESSION ini bisa berupa bilangan, array, karakter maupun string.
Contoh :
submit.php
<?php
session_start(); // mengaktifkan SESSION
$bil1 =
$_POST['bil1'];
$bil2 =
$_POST['bil2'];
// menyimpan
kedua bilangan ke dalam SESSION
$_SESSION['bil1']
= $bil1;
$_SESSION['bil2']
= $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>";
?>
Kemudian, bagaimana
dengan script lanjut.php nya? Bagaimana cara menampilkan nilai
kedua
bilangan yang disimpan dalam SESSION? Ini dia scriptnya :
lanjut.php
<?php
session_start();
// membaca nilai
dari variabel SESSION
$bil1 =
$_SESSION['bil1'];
$bil2 =
$_SESSION['bil2'];
echo
"Anda memasukkan bilangan ke-1 : ".$bil1."<br />";
echo
"Anda memasukkan bilangan ke-2 : ".$bil2."<br />";
?>
Keterangan:
Dalam script
lanjut.php di atas, kita tetap memberikan perintah session_start() karena dalam script lanjut.php ini kita masih
memanfaatkan variabel SESSION
Menghapus Variabel SESSION
Cara pertama,
Anda akan langsung bisa menghapus SESSION bila Anda keluar dari browser (EXIT),
buka
meminimize lho!
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']);
Penerapan 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? Ya… dengan disimpannya username ke dalam SESSION
sekaligus bisa digunakan untuk mencegah adanya penyusup yang masuk ke aplikasi tanpa
melalui login.
Lho? Kok bisa,
logikanya bagaimana? Ya.. 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.
Lebih lanjut
mengenai bagaimana menerapkan SESSION dalam autentifikasi user ini, baca
artikel di /apa-sih-gunanya-session- di -php/
Tugas Untuk Anda
Buatlah autentifikasi user dari suatu aplikasi web menggunakan konsep SESSION. Adapun username-username yang boleh mengakses aplikasi ini adalah
Username dan password di atas harus disimpan dalam sebuah ARRAY. Adapun konsepnya sama seperti pada pengerjaan soal no. 5 Bab 11.
Berikut ini gambaran aplikasinya:
Terlebih dahulu buatlah sebuah desain halaman web dengan layout seperti di bawah ini:
Selanjutnya, bagi-bagilah layout tersebut ke dalam modul header.php dan footer.php Untuk halaman utama, tampilkan form login untuk user.
Keterangan:
Login dikatakan berhasil bila password yang dimasukkan oleh seorang user melalui form login sama dengan password yang tersimpan dalam aplikasi (dalam hal ini password yang ada dalam array).
XXX adalah username yang sukses login.
Untuk setiap halaman Link 1, 2, dan 3 berikut ini tampilannya
Catatan:
Aplikasi yang dibuat harus bisa menghandle apabila login salah, misalnya muncul keterangan “Password yang dimasukkan salah” bila username terdaftar namun passwordnya salah, atau “Username tidak terdaftar” bila usernamenya tidak terdaftar dalam aplikasi.
Bila password login salah atau user tidak terdaftar, maka menu link navigasi tidak ditampilkan
Aplikasi yang dibuat harus bisa menghandle adanya penyusup yang ingin langsung masuk ke halaman Link 1, 2 dan 3 tanpa melalui login (autentifikasi). Aplikasi yang dibuat harus bisa menghandle proses logout.
Program :
//Untuk Header
//Untuk Footer
//Untuk Layout
//Untuk Proses
//Untuk Layout1
//Untuk Menu Tanggal
//Untuk Logout
Output :
//Login
//Pilih Menu
//Menu Waktu
//Logout
Tugas Untuk Anda
Buatlah autentifikasi user dari suatu aplikasi web menggunakan konsep SESSION. Adapun username-username yang boleh mengakses aplikasi ini adalah
Username dan password di atas harus disimpan dalam sebuah ARRAY. Adapun konsepnya sama seperti pada pengerjaan soal no. 5 Bab 11.
Berikut ini gambaran aplikasinya:
Terlebih dahulu buatlah sebuah desain halaman web dengan layout seperti di bawah ini:
Selanjutnya, bagi-bagilah layout tersebut ke dalam modul header.php dan footer.php Untuk halaman utama, tampilkan form login untuk user.
Selanjutnya bila login berhasil tampilkan halaman berikut ini (munculkan link navigasi)
Keterangan:
Login dikatakan berhasil bila password yang dimasukkan oleh seorang user melalui form login sama dengan password yang tersimpan dalam aplikasi (dalam hal ini password yang ada dalam array).
XXX adalah username yang sukses login.
Untuk setiap halaman Link 1, 2, dan 3 berikut ini tampilannya
Catatan:
Aplikasi yang dibuat harus bisa menghandle apabila login salah, misalnya muncul keterangan “Password yang dimasukkan salah” bila username terdaftar namun passwordnya salah, atau “Username tidak terdaftar” bila usernamenya tidak terdaftar dalam aplikasi.
Bila password login salah atau user tidak terdaftar, maka menu link navigasi tidak ditampilkan
Aplikasi yang dibuat harus bisa menghandle adanya penyusup yang ingin langsung masuk ke halaman Link 1, 2 dan 3 tanpa melalui login (autentifikasi). Aplikasi yang dibuat harus bisa menghandle proses logout.
Program :
//Untuk Header
<html>
<head>
<title>Session</title>
</head>
<body>
<table width=100% border=1>
<tr>
<td colspan=2><center><b>SESSION</b></center></td>
</tr>
<tr>
//Untuk Footer
</tr>
<tr>
<td colspan=2><center><b>Copyright @Joyboy Code </b></center></td>
</tr>
</body>
</html>
//Untuk Layout
<?php
include "Headerr.php";
?>
<td><center><b>Silakan Login</b></center><br><br>
<form method="POST" action="proses.php">
<center>Username <input type="text" name="user"><br>
Password <input type="password" name="pass"><br>
<input type="submit" value="submit"></center><br>
</form>
<?php
include "Footerr.php";
?>
//Untuk Proses
<?php
session_start();
$un = $_POST['user'];
$pass = $_POST['pass'];
$_SESSION['un'] = $un;
$_SESSION['pass'] = $pass;
array ( Username , Password,
A , password1,
B , password2,
C , password3,
D , password4,
E , password5 );
switch($un)
{
case $un == ' ' && $pass == ' ' :
echo "<b>Anda belum memasukkan Username dan Password</b>";
include "layout.php";
break;
case $un == 'A' && $pass == 'password1' ;
include "layout1.php";
break;
case $un == 'B' && $pass == 'password2' ;
include "layout1.php";
break;
case $un == 'C' && $pass == 'password3' ;
include "layout1.php";
break;
case $un == 'D' && $pass == 'password4' ;
include "layout1.php";
break;
case $un == 'E' && $pass == 'password5' ;
include "layout1.php";
break;
default : echo "<b>Username atau Password Salah</b>". include "layout.php";
}
?>
//Untuk Layout1
<?php
include "Headerr.php";
?>
<td><center><b>Anda Telah Berhasil Login</b></center></br>
<center><a href=tanggal.php>Waktu</a>
<a href=cuaca.php>Cuaca</a>
<a href=ramalan.php>Ramalan</a>
</center></br>
<a href=logout.php><center>Logout</center></a>
<?php
include "Footerr.php";
?>
//Untuk Menu Tanggal
<?php
include "Headerr.php";
?>
<td><center><b>Anda Telah Berhasil Login</b></center></br>
<center><a href=tanggal.php>Waktu</a>
<a href=cuaca.php>Cuaca</a>
<a href=ramalan.php>Ramalan</a>
</center></br>
<a href=logout.php><center>Logout</center></a><br>
;
<center><b><?php echo date ("d-m-y h:i:s");?></b></center><br><br>
<?php
include "Footerr.php";
?>
//Untuk Logout
<?php
session_start();
$_SESSION['un'];
?>
<html>
<head></head>
<title></title>
<?php
session_destroy();
include "layout.php";
?>
<body>
</body>
</html>
Output :
//Login
//Pilih Menu
//Menu Waktu
//Logout
Sekian pembelajarannya untuk hari ini..
Terimakasih sobat JoyBoy mau berkunjung di blog kami..
Sering-sering mampir disini, karena kami akan update pembelajaran tentang bahasa pemrograman tiap minggunya👌
terimakasih sangat membantu dan sangat bermanfaat
ReplyDelete