Membuat Login Multi User Dengan Php Dan Mysqli Terbaru
Senin, Juni 24, 2019Membuat login multi user dengan php dan mysqli terbaru, cara membuat form login dengan php yang terbaru.
Seperti yang kita ketahui, bahwa form login sangatlah diperlukan dalam sebuah website, untuk menjaga keamanan website tersebut.
Jika suatu website yang memiliki halaman admin, atau dashboard tidak memiliki form login, maka sudah pasti website tersebut sangatlah mudah sekali untuk dibajak (dihack) orang
Dan form login multi user sering kali dijadikan tugas oleh para guru pemrograman web di SMK, ataupun di Universitas sebagai tugas pada awal semester.
Jadi panduan kali ini sangatlah penting untuk Anda yang baru belajar pemrograman web
Oleh sebab itu, panduancode akan membagikan panduan membuat login multi user dengan php dan mysqli
Panduan Membuat Login Multi User Dengan Php Dan Mysqli
Apakah Anda bingung dengan perbedaan login multi user dan login biasa? Jika ya maka simak penjelasannya berikut ini
Login multi user dengan php dan mysqli adalah sebuah form login yang memiliki validasi level seperti sebagai admin, atau user biasa saat melakukan login kedalam suatu website
Sedangkan form login php biasa tidak memiliki validasi level atau tidak mempunyai hak akses yang berbeda-beda
Terus kenapa kita harus membuat validasi user saat login? Jawabannya agar setiap user memiliki hak akses yang berbeda-beda sesuai dengan jabatan yang dipegang-nya
Jadi kesimpulan-nya Form Login Multi User Dengan Php dan Mysqli adalah beberapa user dengan hak akses yang berbeda-beda dapat melakukan login terhadap suatu website yang sama, tetapi berbeda fitur yang didapat
Misalnya user yang login memiliki hak akses sebagai admin, maka jika proses loginnya berhasil akan langsung dialihkan pada halaman atau dashboard admin
Atau user yang login memiliki hak akses sebagai pegawai, maka jika proses loginnya berhasil akan langsung dialihkan pada halaman atau dashboard pegawai
Nah, sekarang Anda pasti paham dengan apa itu login multi user dengan php dan mysqli
Oke sekarang kita lanjut pada tahap pembuatannya, simaklah langkah demi langkah yang panduancode berikan
Membuat Database Login Multi User Dengan Php Dan Mysqli
Pada contoh database yang akan kita gunakan adalah database tentang kepegawaian, jadi hak akses yang akan kita buat yaitu sebagai admin, pengurus, dan sebagai pegawai
Sekarang aktifkan xampp Anda dan buka localhost/phpmyadmin untuk membuat database baru dengan nama "multi_user"
Dan buat sebuah table dengan nama "user" dengan column sebagai berikut:
Nama | Tipe | AutoIncrement |
---|---|---|
id | int | ya |
nama | varchar(255) | |
username | varchar(255) | |
password | varchar(255) | |
level | varchar(25) |
Jika sudah, maka tahap berikut-nya yaitu membuat beberapa data user dengan hak akses yang berbeda-beda.
Pada panduan kali ini panduan code akan membuat 3 data user, dengan 1 user mempuanyai hak akses sebagai admin, 1 user lain-nya sebagai pegawai dan 1 user sisa-nya sebagai pengurus.
Untuk value nama, username, dan password silahkan Anda isi sesuai dengan keinginan Anda
Kemudian klik tombol Go pada tabel yang paling bawah, jika sudah tampilan-nya akan seperti gambar dibawah ini
Sekarang Anda sudah memiliki database "multi_user", dengan sebuah tabel yang bernama "user", dan 3 data user dengan hak akses yang berbeda-beda
Setelah database sudah siap tahap berikutnya adalah mulai ngoding Login Multi User Dengan Php Dan Mysqli, berikut inilah panduan ngoding-nya
Ngoding Login Multi User Dengan Php Dan Mysqli
Aplikasi program login multi user dengan level ini panduan code buat langsung di dalam folder htdocs, agar lebih cepat dan mudah
Langkah pertama buat sebuah folder baru dengan nama sesuai keinginan Anda, contohnya panduan code membuat folderbaru dengan nama "multi_user"
Pada project ini kita akan membuat beberapa file yang diperlukan, dan file-file yang akan dibuat yaitu sebagai berikut:
- index.php
- Style.css
- koneksi.php
- cek_login.php
- halaman_admin.php
- halaman_pengurus.php
- halaman_pegawai.php
- logout.php
Membuat Index.php Dan Style.css Pada Folder Multi_User
Seperti yang kita ketahui bahwa sebuah index.php adalah yang paling penting disetiap project. Oleh kerena itu yang pertama kali kita buat adalah index.php dulu, setelah itu baru style.css-nya
Untuk langkah paling awal yaitu silahkan Anda masuk ke folder htdocs, lalu buat folder baru dengan nama multi_user
Buat sebuah file baru pada folder multi_user dengan nama index.php
Copy code atau script index.php berikut ini dan pastekan pada file index.php:
<!DOCTYPE html>
<html>
<head>
<title>Form Login Multi User www.panduancode.com</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h1>Membuat Login Multi User Dengan PHP dan MySQLi<br/>www.panduancode.com</h1>
<?php
if(isset($_GET['pesan'])){
if($_GET['pesan']=="gagal"){
echo "<div class='alert'>Username atau Password tidak sesuai !</div>";
}
}
?>
<div class="kotak_login">
<p class="tulisan_login">Silahkan login</p>
<form action="cek_login.php" method="post">
<label>Username</label>
<input type="text" name="username" class="form_login" placeholder="Username .." required="required">
<label>Password</label>
<input type="password" name="password" class="form_login" placeholder="Password .." required="required">
<input type="submit" class="tombol_login" value="LOGIN">
</form>
</div>
</body>
</html>
Kemudian buat file baru lagi dan beri nama style.css, dan copy code atau script berikut ini dan pastekan pada file style.css kemudian save:
body{
font-family: sans-serif;
background: #ebf9fb;
}
h1{
text-align: center;
/*ketebalan font*/
font-weight: 300;
}
.tulisan_login{
text-align: center;
/*membuat semua huruf menjadi kapital*/
text-transform: uppercase;
}
.kotak_login{
width: 350px;
background: white;
/*meletakkan form ke tengah*/
margin: 80px auto;
padding: 30px 20px;
box-shadow: 0px 0px 100px 4px #d6d6d6;
}
label{
font-size: 11pt;
}
.form_login{
/*membuat lebar form penuh*/
box-sizing : border-box;
width: 100%;
padding: 10px;
font-size: 11pt;
margin-bottom: 20px;
}
.tombol_login{
background: #2aa7e2;
color: white;
font-size: 11pt;
width: 100%;
border: none;
border-radius: 3px;
padding: 10px 20px;
}
.link{
color: #232323;
text-decoration: none;
font-size: 10pt;
}
.alert{
background: #e44e4e;
color: white;
padding: 10px;
text-align: center;
border:1px solid #b32929;
}
Sekarang Anda telah selesai membuat halaman login-nya, dan untuk desain pada halaman login ini sudah cukup elegan dengan minimalis desain, jadi Anda tidak perlu untuk mengubah desain-nya
Nah jika dijalankan tampilan-nya akan terlihat seperti gambar dibawah ini
Tahap berikutnya adalah membuat action login multi user dengan php dan koneksi database mysqli, simaklah dengan baik cara membuat action login nya dibawah ini
Membuat Action Login Multi User Dengan Php Dan Mysqli
Agar dapat membuat action Login Multi User Dengan Php Dan Mysqli, Anda harus memperhatikan syntax pada file indek.php, karena kita telah menetapkan file yang akan memperoses form login ini yaitu file cek_login.php.
<form action="cek_login.php" method="post">
Oleh sebab itu kita harus membuat lagi sebuah file php dengan nama cek_login.php, dan perlu diingat bahwa sistem ini akan sangat berhubungan dengan database
Maka kita harus membuat file koneksi.php terlebihdahulu untuk menghubungkan dengan database
Buat sebuah file baru dengan nama koneksi.php, kemudian copy source code / script dibawah ini, dan pastekan pada file koneksi.php tersebut, lalu save
koneksi.php
<?php
$koneksi = mysqli_connect("localhost","root","","multi_user");
// Check connection
if (mysqli_connect_errno()){
echo "Koneksi database gagal : " . mysqli_connect_error();
}
?>
Jika sudah tahap selanjutnya sudah pasti adalah membuat file cek_login.php nya, buatlah file baru dengan nama cek_login.php, kemudian copy cource code / script berikut ini kemudian pastekan di file baru tersebut, lalu save
cek_login.php
<?php
// untuk mengaktifkan session pada php agar keamanan login lebih tinggi
session_start();
// menghubungkan file php dengan koneksi ke database mysqli
include 'koneksi.php';
// menerima data yang disubmit dari form login multi user
$username = $_POST['username'];
$password = $_POST['password'];
// seleksi data user dengan username dan password apakah sesuai atau tidak
$login = mysqli_query($koneksi,"select * from user where username='$username' and password='$password'");
// hitung jumlah data yang ditemukan dari form login
$cek = mysqli_num_rows($login);
// mengcek apakah username dan password ditemukan pada database yang ada
if($cek > 0){
$data = mysqli_fetch_assoc($login);
// fungsi login sebagai admin
if($data['level']=="admin"){
// buat session login dan username agar keamanan lebih tinggi
$_SESSION['username'] = $username;
$_SESSION['level'] = "admin";
// pindahkan ke halaman dashboard admin
header("location:halaman_admin.php");
// fungsi login sebagai pegawai
}else if($data['level']=="pegawai"){
// buat session login dan username agar keamanan lebih tinggi
$_SESSION['username'] = $username;
$_SESSION['level'] = "pegawai";
// pindahkan ke halaman dashboard pegawai
header("location:halaman_pegawai.php");
// fungsi login sebagai pengurus
}else if($data['level']=="pengurus"){
// buat session login dan username agar keamanan lebih tinggi
$_SESSION['username'] = $username;
$_SESSION['level'] = "pengurus";
// pindahkan ke halaman dashboard pengurus
header("location:halaman_pengurus.php");
}else{
// pindahkan ke halaman login kembali
header("location:index.php?pesan=gagal");
}
}else{
header("location:index.php?pesan=gagal");
}
?>
Perlu Anda ketahui bahwa pada dasarnya login multi user ini sama saja seperti login biasa, namun perbedaannya cuma login multi user dapat login dengan menggunakan hak akses yang berbeda, dengan tujuan memberikan hak akses sesuai yang diperlukan
Dan perbedaan pada source code / scriptnya terlihat jelas terletak pada file cek_login.php, karena logika dasar nya berasal dari sana
File cek_login.php akan memeriksa apakah login berhasil, atau gagal sesuai dengan hak akses yang dipilih oleh user
Jika berhasil maka si user akan dialihkan ke halaman dashboard yang sesuai dengan hak akses yang dimilikinya
Contoh: user dengan hak akses admin berhasil login dan langsung di alihkan pada halaman dashboard admin dan sebaliknya
Sebagai contoh sederhana kita sekarang akan membuat halaman admin, pegawai dan pengurus, agar Membuat Login Multi User Dengan Php Dan Mysqli dapat sempurna sesuai dengan yang diharapkan
Yang pertama kita buat adalah halaman admin, buatlah sebuah file baru dengan nama halaman_admin.php, kemudian copy source code / script berikut ini dan paste pada file halaman_admin.php lalu save
halaman_admin.php
<!DOCTYPE html>
<html>
<head>
<title>Halaman Untuk Admin</title>
</head>
<body>
<?php
session_start();
// untuk mengcek apakah yang mengakses halaman ini sudah login atau belum
if($_SESSION['level']==""){
header("location:index.php?pesan=gagal");
}
?>
<h1>Halaman Admin</h1>
<p>Halo <b><?php echo $_SESSION['username']; ?></b> Anda telah berhasil login sebagai <b><?php echo $_SESSION['level']; ?></b>.</p>
<a href="logout.php">LOGOUT</a>
</body>
</html>
Kemudian kita buat lagi file baru dan beri nama halaman_pegawai.php, lalu copy source code / script dibawah ini dan paste pada file halaman_pegawai.php setelah itu save
halaman_pegawai.php
<!DOCTYPE html>
<html>
<head>
<title>Halaman Untuk Pegawai</title>
</head>
<body>
<?php
session_start();
// Untuk mengcek apakah yang mengakses halaman ini sudah login atau belum
if($_SESSION['level']==""){
header("location:index.php?pesan=gagal");
}
?>
<h1>Halaman Pegawai</h1>
<p>Halo <b><?php echo $_SESSION['username']; ?></b> Anda telah berhasil login sebagai <b><?php echo $_SESSION['level']; ?></b>.</p>
<a href="logout.php">LOGOUT</a>
</body>
</html>
Selanjutnya kita buat halaman untuk pengurus, untuk membuat halaman pengurus Anda buat file baru dan beri nama halaman_pengurus.php
Baru Anda copy source code / script dibawah ini dan paste pada halaman_pengurus.php dan save
halaman_pengurus.php
<!DOCTYPE html>
<html>
<head>
<title>Halaman Untuk Pengurus</title>
</head>
<body>
<?php
session_start();
// Untuk mengcek apakah yang mengakses halaman ini sudah login atau belum
if($_SESSION['level']==""){
header("location:index.php?pesan=gagal");
}
?>
<h1>Halaman Pengurus</h1>
<p>Halo <b><?php echo $_SESSION['username']; ?></b> Anda telah berhasil login sebagai <b><?php echo $_SESSION['level']; ?></b>.</p>
<a href="logout.php">LOGOUT</a>
</body>
</html>
Jangan lupa ada satu file lagi yang harus kita buat yaitu file logout.php, file logout ini sangat berguna sekali dalam login multi user ini
Karena pada logikanya file logout.php akan menghapus semua session yang sudah pada saat user login
Dan kemudian mengembalikan kembali ke halaman index.php
Nah, untuk membuat file logout.php Anda buatlah sebuah file baru dengan nama logout.php, dan copy source code berikut ini, lalu paste pada file logout.php tersebut
logout.php
<?php
// Untuk mengaktifkan session pada php
session_start();
// Untuk menghapus semua session
session_destroy();
// pindah halaman ke halaman login
header("location:index.php");
?>
Jika sudah selamat Anda telah berhasil membuat login multi user dengan php dan mysqli, sekarang cobalah project login multi user Anda
Caranya silahkan akses localhost/multi_user pada browser Anda
Pertama cobalah masukan username atau password yang salah, maka akan muncul sebuah notifikasi bahwa login gagal
Setelah itu coba lagi dengan memasukan username dan password yang benar sesuai dengan database yang Anda buat tadi, lalu klik login maka Anda akan di alihkan pada halaman yang sesuai dengan hak akses yang anda pilih tadi pasaat login
Bagaimana mudah bukan membuat login multi user dengan php dan mysqli?
Demikianlah panduan login multi user dari panduan code semoga dapat bermanfaat bagi Anda, dan jangan lupa apabila Anda masih bingung atau terdapat masalah pada project ini, silahkan sampaikan di kolom komentar oke
Coba cari lagi apa yang ada inginkan pada kolom berikut: