
Diantara sekian banyak prosedur di PHP,
session adalah salah satu bagian yang cukup menyulitkan bagi pemula.
Session merupakan prosedur yang digunakan PHP untuk kepentingan browser agar dapat mengingat siapa yang sedang mengakses suatu halaman.
Siapa disini tentu saja bukan nama seseorang apalagi nama kucing (
hiks), tetapi history komputer anda yang ditanamkan dalam aplikasi browser ketika mengakses suatu halaman.
Misalnya, pada situs anda terdapat
4 file utama, yaitu :
index.php,
artikel.php,
profil.php dan
contact.php. Sebagai pemilik anda menginginkan agar user yang tidak melakukan login
tidak berhak untuk melihat file
artikel.php secara detail.
Nah, untuk menangani kasus ini, anda dapat menggunakan
session yang diterapkan langsung didalam file
artikel.php.
Contoh code :
Isi file artikel.php<?
session_start();if(
!$_SESSION['
usermember'] &&
!$_SESSION['
passmember'])
{
header("location:member/login.php");
}
else
{
include ("koneksi_database.php");
echo "Koleksi Artikel kami : <br>";
?>
//======= Disini diletakkan script utama dari artikel.php ======
<?
}
?>
Catatan :
Pastikan anda menempatkan perintah
session_start(); diatas script HTML, CSS atau Javascript.
Pada script diatas, penentuan identitas session diawali dengan perintah
session_start();. Dimana browser akan segera menghidupkan fungsi checking
session-nya.
Jika browser tidak menemukan session (
!$_SESSION ) dengan nama
usermember dan
passmember maka browser akan
mengalihkan anda ke file
login.php yang ada di folder
member dengan perintah
header("
location:member/login.php");.
File
login.php ini kita umpamakan akan dieksekusi oleh file
ceklogin.php. Ini artinya, yang akan menjadi penentu adalah file
ceklogin.php tersebut yang tidak akan tinggal diam seribu bahasa.
Pada file tersebut ditanamkan perintah untuk pendaftaran
session dengan nama
usermember dan
passmember. Sedangkan file
login.php hanya berisi form dengan tiga input, yaitu
username,
password dan
submit.
Selengkapnya adalah sebagai berikut :
login.php<form action="
ceklogin.php" metode="post">
Username : <input type=text name=
username size=20><br>
Password : <input type=text name=
password size=20><br>
<input type=submit value=Login name=
login>
</form>
Ket : Teks tebal (nilai dari
name) adalah variabel yang akan dieksekusi oleh file
ceklogin.php.
ceklogin.php<?
session_start();include ("koneksi_database.php");
if(
$_POST['login'])
{
$username=
$_POST['username'];
$password=
$_POST['password'];
$cekuser=
mysql_query("select username,password from user_account where username='$username' and password='$password');
$datauser=mysql_fetch_array($cekuser);
if($datauser[username] == "$username" and $datauser[password]=="$password")
{
session_register("usermember");
session_register("passmember");
$_SESSION['usermember']=$datauser[username];
$_SESSION['passmember']=$datauser[passmember];
header("location:artikel.php"):
}
else
{
echo "Maaf, password yang anda masukkan salah.";
}
}
?>
Pada file
ceklogin.php terdapat perintah penting berkaitan dengan pembahasan ini, yaitu :
session_register("usermember");
session_register("passmember");
Perintah tersebut berarti anda akan menjadikan variable
usermember dan
passmember sebagai identitas
session untuk kemudian ditindak oleh browser. Isi dari
usermember dan
passmember adalah sama dengan yang ditampilkan dari database. Script tersebut mengimplementasikannya dengan perintah berikut :
$_SESSION['usermember']=$datauser[username];
$_SESSION['passmember']=$datauser[passmember];
Semoga bermanfaat.