Cara membuat Form login Admin dengan Multiuser toya



Dalam postingan sebelumnya saya sudah membahas tentang "Cara Membuat Form Auto Complete di PHP". Nah, dalam postingan kali ini kita akan membahas bagaimana cara membuat form login admin dengan multiuser.


Sebuah website yang memiliki multiple admin atau mungkin admin dan user tentunya membutuhkan implementasi pemrograman menggunakan teknik pelevelan. Misalnya dalam suatu aplikasi web terdapat dua jenis admin, diantaranya :


  • Admin utama (akses ke seluruh administrasi situs web)
  • User registrasi (akses ke beberapa fitur situs)

Baiklah untuk lebih jelasnya langsung saja kita praktekan :

1. Buat sebuah database dengan nama "kampus" kemudian buat sebuah tabel dengan nama user, untuk struktur fieldnya silahkan lihat gambar dibawah ini :





Selanjutnya kita akan mengisi struktur di atas. Misalnya kita mempunyai dua data, dimana satu data adalah super admin dan satu lagi adalah user umum.



2.Selanjutnya kita akan merancang dan mengimplementasinya dengan membuat form sederhana menggunakan HTML. copypaste saja script dibawah ini lalu simpan dengan nama index.php :

<form action="login.php" class="form-horizontal" method="post">
<label class="username">Username</label>
    <input name="username" placeholder="Username Anda" type="text" />
    <label class="password">Password</label>        
    <input name="pass" placeholder="Password" type="password" />
    <button class="btn" name="submit" type="submit">Login</button>
</form>

3. Setelah form sederhana selesai dibuat, selanjutnya kita buat juga file config.php yang berisi konfigurasi database agar terhubung dengan form sistem login yang kita buat. 
berikut source code-nya :


<?php
    $host="localhost";
    $user="root";
    $password="";    
    $koneksi=mysql_connect($host,$user,$password) or 
    die("Gagal koneksi mas bro..!");
    mysql_select_db("kampus");
?>


4. selanjutnya kita membuat file login.php yang berisi variabel $_SESSION dan menggunakan fungsi php session_start(), agar data session tersimpan ke browser.



<?php
session_start();
include 'config.php';
$username = $_POST['username'];
$password = $_POST['pass'];
// query untuk mendapatkan record dari username
$query = "SELECT * FROM user WHERE username = '$username'";
$hasil = mysql_query($query);
$data = mysql_fetch_array($hasil);
// cek kesesuaian password
if ($password == $data['password'])
{
echo "sukses";
    // menyimpan username dan level ke dalam session
    $_SESSION['level'] = $data['level'];
    $_SESSION['username'] = $data['username'];
    header('location: admin.php');
}
else 
echo '<h1>Login gagal</h1>';
?>


5. Dalam tahap ini kita akan membuat pengecekan session, Jadi kita akan menerapkan fungsi IF..ELSE. Copy script dibawah ini lalu simpan dengan nama admin.php


<?php
// memulai session
session_start();
error_reporting(0);
if (isset($_SESSION['level']))
{
    // jika level admin
    if ($_SESSION['level'] == "admin")
   {   
   }
   // jika kondisi level user maka akan diarahkan ke halaman lain
   else if ($_SESSION['level'] == "user")
   {
       header('location:user.php');
   }
}
if (!isset($_SESSION['level']))
{
    header('location:../index.php');
}
 ?>

buat lagi sebuah file dengan nama user.php lalu copykan lagi script dibawah ini :



<?php
error_reporting(0);
session_start();
if (isset($_SESSION['level']))
{
 
   if ($_SESSION['level'] == "admin")
   {
      include 'konten-admin.php';
   }
   else if ($_SESSION['level'] == "user")
   {
       include 'konten-user.php';
   }
}
?>

No comments: