Cara membangun halaman login/masuk dan logout/keluat multi user/level di laman dengan php & mysql – Halo! Selamat satang di artikel Referensi Coding kali ini. Karena banyak yang request artikel mengenai cara membangun halaman login dan logout multi level, here it is.. Kali ini saya akan menjelaskan cara bagi membuat login multi level dengan php dan mysql yang dapat kalian pelajari dan unduh seketika dibawah.
Tetapi sebelum itu, berikut ada beberapa penjelasan singkat mengenai artikel saya kali ini.
Login Multi Level?
Oke, jadi maksudnya saya akan mencoba membangun sebuah halaman login dimana 2 jenis pengguna dengan hak akses yang berbeda dapat masuk pada satu form login. Disini saya mengambil contoh jenis pengguna dengan hak akses yang berbeda yaitu admin, dan user/pegguna.
Bagi membangun halaman login multi level dan logoutnya, memerlukan sebuah bahasa pemrograman yaitu PHP dan database MySQL. Nah, bagi itu kamu perlu menginstal program host server lokal karena di kebanyakan komputer belum ada program yang dapat mengakses laman dengan bahasa ini. Biasanya digunakan host server lokal ‘XAMPP’ karena free dan gampang. Kamu dapat unduh XAMPP dan mempelajari apa itu host server lokal di artikel saya sebelumnya : “PENGENALAN HOST SERVER LOKAL XAMPP”
Sebelum membuat halaman login multi level sekaligus logout dengan php dan mysql, saya akan menjelaskan bagaimana cara kerja atau algoritma program yang akan saya bikin. Berikut yakni cara kerjanya.
1. Yang pertama-tama saya tak memisah file index dan login. Jadi dikala login/belum login, kamu tetap di halaman index.
2. Pada formulir login, ada 2 kotak input yaitu username dan password dan 1 select input bagi memilih level login (ingin masuk selaku apa)
3. File akan memanggil database yang telah berisi data username dan password sekaligus cek ketersediaan (bagi memastikan username/password benar)
4. Seandainya login, tampilan akan berubah. Seandainya ada kesalahan, akan tampil peringatan.
5. Seandainya klik logout/keluar karenanya akan menghapus session dan kembali ke tampilan login
Biar lebih jelas, berikut yakni gambarannya.
Okee.. Setelah mengetahui cara kerjanya, kini saatnya kita membangun halaman index yang berisi tampilan login dan setelah login. Lumayan dengan tampilan yang sederhana saja ya..
Berikut cara membangun halaman login multi level di laman dengan php & mysql.
Let’s Ngoding!

CREATE TABLE IF NOT EXISTS `Referensi Coding_login` (
`username` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL,
`level` varchar(10) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dumping data for table `Referensi Coding_login`
--
INSERT INTO `Referensi Coding_login` (`username`, `password`, `level`) VALUES
('admin', 'admin', 'admin'),('user', 'user', 'user');
--
-- Indexes for dumped tables
--
--
-- Indexes for table `Referensi Coding_login`
--
ALTER TABLE `Referensi Coding_login`
ADD PRIMARY KEY (`username`);
2. Bagi file websitenya, kita bikin dulu file ‘index.php’ dengan kode berikut
<!DOCTYPE html>
<html>
<head>
<title>Belajar Membangun Login Multi Level - http://referensicoding.com</title>
</head>
<link rel="stylesheet" type="text/css" href="style.css">
<body>
<form method="post">
<?php
//Menghubungkan Ke Database
$host = 'localhost'; //Nama Host
$user = 'root'; //Nama User
$pass = ''; //Nama Password
$database = 'login'; //Nama Database
$db = mysqli_connect($host,$user,$pass,$database); //Mulai Hubungan
session_start(); //Menyalakan Session
if (!@$_SESSION['masuk']) { //Seandainya Belum Login Karenanya Tampilkan Halaman Login
if (isset($_POST['masuk'])) { // Seandainya Pengakses Menekan Tombol Masuk
$user = $_POST['username']; //Mengambil Hasil Input Di Kolom Input Username
$pass = $_POST['password']; //Mengambil Hasil Input Di Kolom Input Password
$level = $_POST['level']; //Mengambil Jenis Level Yang Dipilih
if (empty($user) || empty($pass) || empty($level)) {
echo "<center><div class='peringatan'>Seluruh Kolom Wajib Diisi!</div></center>";
}
if ($level == 'admin') { //Seandainya Pengakses Memilih Level Admin
$query = mysqli_query($db, "SELECT*FROM Referensi Coding_login WHERE level = 'admin' AND username = '$user' AND password = '$pass'"); //Mencari Data Di Database
$cek = mysqli_num_rows($query); //Cek Ketersediaan
if ($cek > 0) { //Seandainya Tak Kosong
$_SESSION['masuk'] = $user; //Membangun Session
header("location:./"); //Mengandung Ulang Halaman
}
else{//Seandainya Kosong
echo "<center><div class='peringatan'>Username Atau Password Bagi Level Admin Salah!</div></center>";
}
}
elseif ($level == 'user') {
$query = mysqli_query($db, "SELECT*FROM Referensi Coding_login WHERE level = 'user' AND username = '$user' AND password = '$pass'"); //Mencari Data Di Database
$cek = mysqli_num_rows($query); //Cek Ketersediaan
if ($cek > 0) { //Seandainya Tak Kosong
$_SESSION['masuk'] = $user; //Membangun Session
header("location:./"); //Mengandung Ulang Halaman
}
else{//Seandainya Kosong
echo "<center><div class='peringatan'>Username Atau Password Bagi Level User Salah!</div></center>";
}
}
}
?>
<h1>Masuk</h1>
<input type="text" name="username" placeholder="Username"><br>
<input type="password" name="password" placeholder="Password"><br>
<select name="level">
<option value="">-PILIH LEVEL-</option>
<option value="admin">Admin</option>
<option value="user">User</option>
</select><br>
<input type="submit" name="masuk" value="Masuk">
</form>
<?php
}
else{ //Seandainya Telah Masuk Karenanya Tampilkan Halaman Utama
$data = mysqli_fetch_array(mysqli_query($db, "SELECT*FROM Referensi Coding_login WHERE username='$_SESSION[masuk]'")); //Mengambil Data Pengguna Yang Login
if ($data['level'] == 'admin') { //Seandainya Yang Masuk Ialah Admin
$konten = '<h1>Selamat Datang Admin <i>(@'.$data['username'].')</i>!</h1>Selamat Mengoptimalkan Situs!';
}
else{ //Seandainya Yang Masuk Ialah User
$konten = '<h1>Selamat Datang Pengguna Situs <i>(@'.$data['username'].')</i>!</h1>';
}
$logout = "<a href='./?keluar=1'>Keluar</a>"; //Membangun Tombol Keluar
if (isset($_GET['keluar'])) { //Seandainya Klik Tombol Keluar
unset($_SESSION['masuk']); //Menghapus Session
header("location:./"); //Mengandung Ulang Halaman
}
echo $konten.'<br>'.$logout;
}
?>
</body>
</html>
“>
3. Biar ganteng websitenya, bikin file ‘style.css’
html{
font-family: calibri;
float: center;
text-align: center;
}
body{
margin:10px;
}
form{
margin-top:10%;
width: 100%;
}
input[type="text"], input[type="password"], select{
background: #FFF;
border: 1px solid grey;
border-radius: 5px;
padding: 10px;
margin-bottom: 10px;
width: 400px;
}
input[type="submit"]{
background: #ade7e7;
padding: 10px;
font-size: 20px;
border:1px solid #448086;
margin-bottom: 10px;
}
input[type="submit"]:hover{
background: #55c0c6;
}
.peringatan{
background: #d0203a;
padding: 10px;
border: 1px solid darkred;
border-radius: 5px;
margin-bottom: 10px;
width: 500px;
}
a{
color: #648da2;
font-size: 40px;
text-decoration: none;
}
a:hover{
color:#33636c;
}
Setelah selesai membangun halaman login dan logout, silahkan jalankan websitenya. Bagi nama file websitenya terserah kamu. Yang urgen nama database dan file di pada websitenya mesti sesuai seperti tadi.
Seandainya ingin seketika coba, kamu dapat unduh filenya..
Download File Disini
Setelah itu tinggal ekstrak filenya dan akses lewat localhost/multi_level di browser.
Panduan ini saya bikin bagi pembelajaran. Jadi hanya saya bikin sederhana. Yang urgen cara kerjanya dapat dipahami bersama dan dimengerti dengan gampang dan ada penjelasan di tiap kode pada file websitenya sehingga dapat dengan gampang paham dan dapat dengan gampang diedit.
Oke dan seperti itulah cara membuat halaman login multi user/level dan logout dengan php dan mysql. Seandainya ada pertanyaan, silahkan berkomentar!
Semoga artikel ini bermanfaat! Selamat mencoba dan semoga berhasil!
Terima Kasih..