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;

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.


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👌

Comments

Post a Comment

Popular Posts