Salah satu bentuk aplikasi yang sangat memerlukan cookie/session adalah halaman autentikasi. Pada prinsipnya, autentikasi digunakan untuk memproteksi halaman-halaman sensitif. Untuk mengetahui lebih detail mengenai halaman autentikasi, ikuti langkahlangkah berikut:
1. Buat folder khusus, misalnya autentikasi_cookie.
2. Buat kode untuk halaman index.php.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Autentikasi Halaman</title>
<style type="text/css">
.inner{
margin:200px auto; padding:20px; width:240px; border:1px solid #333;}
</style>
</head>
<body>
<p>
<?php
ini_set('display_errors', 1);
define('_VALID', 1);
//include file eksternal
require_once('./auth.php');
init_login();
validate();
?>
</p>
<p align="right"><a href="?m=logout">Logout</a></p>
<br/>
<h3 align="center">Simulasi Halaman Admin</h3>
<p align="center">
<a href="?m=logout"></a>
<p align="center">
Menu-menu admin ada di sini
</body>
</html>
3. Buat kode untuk autentikasi dan simpan dengan nama auth.php misalnya.
<?php
defined('_VALID') or die ('not allowed');
//Pemanggilan session
session_start();
function init_login(){
//Simulasi data account nama dan password
$nama = 'admin';
$pass = 'admin';
if (isset($_POST['nama']) && isset ($_POST['pass'])){
$n = trim($_POST['nama']);
$p = trim($_POST['pass']);
if(($n===$nama) && ($p ===$pass)){
if(!isset($_SESSION['nlogin']) || !isset($_SESSION['time'])){
$_SESSION['nlogin'] = $n;
$_SESSION['time'] = time();
}
?>
<script type="text/javascript">
document.location.href="./";
</script>
<?php
}
else {
echo 'alert("Nama atau Password Yang Anda Masukkan Salah");';
return false;
}
}
}
function validate(){
if(!isset($_SESSION['nlogin']) || !isset($_SESSION['time'])){?>
<style type="text/css">
<!--
.style1 {color: #FFFFFF}
-->
</style>
<div class="inner">
<form action="" method="post">
<table border=0 cellpadding=5>
<tr>
<td colspan="2" bgcolor="#000000"><div align="center" class="style1">LOGIN FORM</div></td>
</tr>
<tr>
<td>Nama</td>
<td><input type="text" name="nama" /></td>
</tr>
<tr>
<td>Password</td>
<td><input type="password" name="pass" /></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="E N T E R" /></td>
</tr>
<tr>
<td colspan="2" bgcolor="#000000"><div align="center" class="style1">========================</div></td>
</tr>
</table>
</form>
</div>
<?php
exit;
}
if(isset($_GET['m']) && $_GET['m'] == 'logout'){
//hapus session
if(isset($_SESSION['nlogin'])){
unset($_SESSION['nlogin']);
}
if(isset($_SESSION['time'])){
unset($_SESSION['time']);
}
//redireksi halaman
?>
<script type="text/javascript">
document.location.href="./";
</script>
<?php
}
}
?>
Nah begitulah Code PHP Halaman Autentikasi Menggunakan Session semoga bermanfaat
0 comments:
Post a Comment