1 August 2016

Cara Sederhana Mengatur Akses Login dengan PHP


Cara mengatur akses setiap kali user login pada aplikasi kita, kali ini saya akan jelaskan source code php untuk mengatur akses login user.

langsung saja kita praktekan.

struktur table pada database yang akan kita gunakan sebagai berikut ;

struktur table pada pada database

silahkan buat database dan struktur table seperti yang di ataas, kemudian buat file/form login yang akan kita gunakan. Setelah itu insert data sebagai berikut, agar bisa di proses saat di klik tombol login.
insert data login, sedangkan hak akses, merupakan menu yang nanti cuma bisa di akses

Untuk data-data hak akses sesuikan kebutuhan atau menu-menu pada web agan sekalian. Lanjut lagi membuat form loginnya. Kemudian insert data lagi dengan data username : user dan password : user hak_akses : barang.

Untuk input hak_akses pisahkan dengan koma

form login yang kita buat

Buat File satu lagi, sebagai halaman utama setelah login berhasil seperi gambar berikut :

tampilan halaman utama jika nanti kita berhasil login

pada halaman utama terdapat menu/link yang mana menu tersebut nantinya kita tampilkan sesuai hak akses yang diberikan.

Untuk source lengkapnya silahkan praktekan di bawah ini :

login.php

<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<style type="text/css">
label {
float: left;
width: 120px;
}
</style>
<body>
<h2>Form Login</h2><hr>
<form action="" method="POST">
<p>
<label>Username</label>
: <input type="text" name="username" placeholder="username ...">
</p>
<p>
<label>Password</label>
: <input type="text" name="password" placeholder="password ...">
</p>
<p>
<label>&nbsp;</label>
&nbsp; <input type="submit" name="submit" value="Login">
</p>
</form>
<?php
session_start();
if (isset($_POST['submit'])) {
mysql_connect("localhost", "root", "");
mysql_select_db("db_tes");
$sql = "SELECT * FROM user WHERE username = '$_POST[username]' AND password = '$_POST[password]'";
$result = mysql_query($sql);
$temukan = mysql_num_rows($result);
if ($temukan > 0) {
$log = mysql_fetch_assoc($result);
$_SESSION['username'] = $_POST['username'];
//mengambil hak akses
$hak_akses = explode(", ", $log['hak_akses']);
$_SESSION['barang'] = !empty(in_array("barang", $hak_akses)) ? "TRUE" : "FALSE";
$_SESSION['transaksi'] = !empty(in_array("transaksi", $hak_akses)) ? "TRUE" : "FALSE";
header("location:halaman_utama.php");
}
else
{
echo"Gagal Login ...";
}
}
?>
</body>
</html>

halaman_utama.php

<?php
session_start();
if (empty($_SESSION['username'])) {
header("location:login.php");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Halaman Utama</title>
</head>
<body>
<table align="center" border="1px" width="800px">
<tr>
<td><h2>Halaman Utama</h2></td>
</tr>
<tr>
<td>
<?php
if($_SESSION['barang'] == "TRUE")
{
echo"[<a href='#''>Data Barang</a>] | "; }
if($_SESSION['transaksi'] == "TRUE")
{
echo"[<a href='#''>Transaksi</a>] | "; }
?>
[<a href="logout.php">Logout</a>]</td>
</tr>
<tr>
<td>Berhasil login ....
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</td>
</tr>
<tr>
<td>Belajar Mudah</td>
</tr>
</table>

</body>
</html>

Semoga berhasil, maka akan tampil seperti berikut ini :
1. Jika login dengan username : ade maka akan tampil seperti berikut ini :
Semua menu akan tampil

2. Jika login dengan username : user
maka akan tampil menu sesuai hak akses yang di berikan.
Batas disini dulu tutorialnya semoga bermanfaat. Wassalam.
Download Source Lengkapnya :

-- Selalu berusaha karena dengan usaha itu semuanya menjadi bisa, jangan lupa berdoa --





Loading...

I am a fan of technology and i love coffee. I’m also interested in web programming and framework. below there are some accounts you can follow to contact me.

Comments

Thanks for comments.
EmoticonEmoticon