Konsep Pembuatan Session Sederharana Pada PHP

Kali ini Anascode ingin membahas tentang penanganan dan pembuatan sission sederhana pada PHP, tuisan ini dibuat untuk meluruskan penjelasan dari dosen yang membuat session sebelum data benar – benar valid.
Ada beberapa teknik penggunaan session pada php namun yang ingin saya jelaskan hanya contoh kecil saja. Session biasanya digunakan untuk autentikasi user yang akan login ke sebuah website. Session dalam penggunaan login harus dibuat ketika data (username dan password) match alias sama.


Contoh:

Username : user
Password : pass

maka ketika seseorang masuk dengan username = user dan password = pass session baru boleh dibuat ketika salah maka untuk memastikan tidak ada user yang bernilai true maka session harus dihapus. Contoh penggunaannya adalah sebagai berikut:
saya anggap anda sudah membuat form login dengan nama variable:

$user=$_POST['user'];
$pass=$_POST['pass']
Jadi cek login nya seperti ini:

<?php
$user=$_POST['user'];
$pass=$_POST['pass']
$d=mysql_fetch_array(mysql_query(“SELECT * FROM nama_table WHERE field_user=’$user’ “));
if($use==$d[field_user]){
if($pass==$d[field_password]){
session_start();
$_SESSION['username']=$d[field_user];
$_SESSION['level']=$d[field_level];
header(‘location: admin.php’);
}
else{
echo ‘Password salah’;
session_start();
session_destroy();
}
}
else{
echo ‘Username tidak ditemukan’;
include “frm_login.php”;
}
?>

Penjelasan:

Jadi ketika username ditemukan baru buat pernyataan jika password sama dengan match (sama) maka buat session dengan nama $_SESSION['username'] dan $_SESSION['level'] yang nilainya diambil dari database ketika anda punya data di table_name:
field_username=user
field_password=user
field_level=admin
Maka ketika user login dengan username = user dan password=user. Maka value ession yang dibuat menjadi:
$_SESSION['username'] = bernilai “user”
$_SESSION['level'] = bernilai “admin”
Untuk membuktikannya silahkan anda cetak sesion tersebut.
Pertanyaanya bagaimana kalau halaman dibagi bagi berdasarkan level user yang login? hm..pertanyaan bagus tuh..! prosedurnya hampir sama dengan session diatas tapi ada beberapa pernyataan yang harus ditambahkan setelah proses pembuatan session dibuat (dibaris $_SESSION['level']=$d[field_level]; ) dengan asumsi:
if($_SESSION['level']==”admin”){
header(‘location: admin.php’);
}
else{
header(‘location: user.php’);
}

Jadi kerita ada user login dengan password dan username sesuai baru dicek nilai levelnya. Jika level nya admin maka user akan dibawa (redirect) ke halaman admin.php dan jika bernilai selain level admin berarti user yang login dengan level user dan akan dibawa ke halaman user.php.

Jadi jelas kan..penggunaan dalam cek login. terus cara memvalidasi dihalaman user.php atau admin.php untuk memastikan yang login sesuai dengan level caranya gimana? Hm..pertanyaan bagus lagi..he..he..
Jadi ketika sebuah konten hanya ditujukan buat user atau admin maka dihalaman yang memerlukan autentikasi level user kita buat dulu kondisinya.
admin.php

<?php
//Script ini dibuat paling atas
session_start();
if($_SESSION['level']==”admin”){
//tampilkan konten admin disini, terserah mau konten apa
//
}
else{
echo ‘Anda login sebagai user dan tidak berhak melihat halaman ini’;
}
?>

Ok sampai disini pembahasan konsep session sederhana.

semoga bermanfaat.
 salam Anascode.. ^.^

0 komentar:

Posting Komentar

Silahkan Tinggalkan Komentar Anda

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Blogger Templates