-->

Membuat Login PHP Multi User dengan hak akses berbeda



Assalamu'alaikum W.W
Oke pada kesempatan kali ini rekayasaternaklele akan membahas tentang Membuat Login PHP Multi User dengan hak akses berbeda. Judul
PHP : Login Multi User

Pengertian
Menurut Wikipedia, PHP: Hypertext Preprocessor adalah bahasa skrip yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk memprogram situs web dinamis. PHP dapat digunakan untuk membangun sebuah CMS.
Latar Belakang
PHP termasuk bahasa pemrograman server side. PHP juga menjadi salah satu bahasa pemrograman yang wajib dikuasi oleh seorang programmer yang ingin menjadi seorang web developer. Hampir semua lowongan kerja web developer mensyaratkan menguasai bahasa pemrogramman PHP.

Maksud dan Tujuan
Memahami, mengerti, dan bisa membuat login multi user pada PHP

Alat dan Bahan
Text Editor , Koenksi Internet, dan PC

Jangka Waktu
1 jam

Pembahasan
Login Multi User adalah login dengan hak akses halaman web berbeda sesuai dengan level yang dimiliki oleh sebuag akun. Contohnya akun dengan level admin bisa masuk ke dalam dashboard sedangkan level user hanya bisa masuk di halaman depan. Berikut cara membuat logn multi user. 

1. Buat Database dan tabel 
Buat Database dan tabel sesuai dengan struktur dibawah ini.
Membuat Login PHP Multi User dengan hak akses berbeda
Tabel User
2. Masukkan data ke dalam tabel user
insert into user values (null,'Ammar Annajih Pasifiky', 'admin',md5('admin'),'admin'),(null,'Sarwo Edi','user',md5('user'),'user')


3. Buat Koneksi PHP ke Database
<?php
<?php 
$conn= mysqli_connect('localhost','root','','crud');
if(!$conn){
 echo "Koneksi gagal";
}
?>

4. Buat Form Login 
<?php 
include('config.php');
?>
<!DOCTYPE html>
<html>
<head>
 <title>Form Login</title>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <link rel="stylesheet" type="text/css" href="style.css">
 <style type="text/css">
 *{
  padding: 0;
  margin: 0;
  box-sizing: border-box;
 }
 body{
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(b.jpg);
  background-position: center center;
  background-attachment: fixed;
  height: 100%;
  min-height: 100vh;
  display: flex;
 }
 form{
  margin: auto;
  max-width: 500px;
  width: 50%;
  text-align: center;
  padding: 30px;
  border: 1px solid transparent;
  background-color:  #E1E1F6;
  border-radius: 20px;
 }
 h2{
  margin-bottom: 20px;
 }
 input{
  display: block;
  width: 100%;
  padding: 10px;
  margin: 30px 0;
  font-size: 20px;
 }
 input[type="submit"]{
  background-color: #2c3e50;
  color: white;
  opacity: 0.8;
  border-radius: 20px;
  border: 0;
  cursor: pointer;

 }
 input[type="submit"]:hover{
  opacity: 1;
  transform: scale(1.1);
 }
 @media ony screen and (max-width: 767px){
  body{
   background-image: url(c.png);
  }
  form{
   width: 75%;
  }

 }
 @media (max-width: 480px){
  form{
   width: 95%;
  }
 }

</style>
</head>
<body>
 <form onload="reset" method="POST" action="proseslogin.php">
  <h2>Login Form</h2>
  <input type="" pe="text" name="uname" placeholder="username" required="required">
  <input type="password" name="pass" placeholder="*********" required="required">
  <input type="submit" name="submit" value="LOgin">
 </form>
</body>
</html>

5. Buat document php untuk memproses Form Login tadi
<?php 
include('config.php');
session_start();
//protect dari mysql injection
$uname = mysqli_real_escape_string($conn, $_POST['uname']);
$pass = mysqli_real_escape_string($conn, $_POST['pass']);
$query="select * from user where uname='$uname' and pass=md5('$pass')"; 
$sql= mysqli_query($conn, $query);
$cek= mysqli_num_rows($sql);
$row = mysqli_fetch_array($sql);
$_SESSION['nis']=$row['nis'];
$_SESSION['role']=$row['role'];
$_SESSION['nama']=$row['nama'];
if ($_SESSION['role']=='admin'){
 header('location:index.php');
//ubah sesuai keinginan
} else if($_SESSION['role']=='user'){
 header('location:../Project2/index.html');
} else{
 session_destroy();
 echo "<meta http-equiv='refresh' content='0;url=login.php'>";
}


?>


6. Buat dokumen PHP untuk proses logout
<?php 
session_start();
session_unset();
session_destroy();
header('location:login.php');
 ?>
7. Buat halaman untuk admin dan user
Buat halaman untuk admin dan user dengan nama sesuai dengan nama di form login. Kemudain, masukkan scrip seperti dibawah ini agar user bisalogout.
<?php 
session_start();
if(!isset($_SESSION['uname']) && !isset($_SESSION['pass'])){
 header('location:login.php');
} else{
 echo $_SESSION['nama']."<a href='logout.php'>Keluar</a>"; 
?>

8. Selamat Berexperiment
Kesimpulan
Login Multi User berfungsi untuk membatasi hak akses akun sehingga sembarang suer tidak bisa mengubah dan memanipulasi data dalam Website. 

Sekian tutorial ini, bila ada kesalahan dan kekurangan mohon maaf yang sebesar besarnya.

0 Response to "Membuat Login PHP Multi User dengan hak akses berbeda"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel