Tutorial Web Lanjutan-Login Multi User Level Dengan mysqli_query
Juli 19, 2024
Login multi user level dengan mysqli_query
Hi Web Developer kali ini guru design akan berbagi tutorial login multi user level ,kita ambil studi kasus kali ini adalah sekolah, di sekolah ada kepala sekolah dan wali kelas, jika kita membuat sebuah sistem akademik pada sekolah tersebut maka kita akan menggunakan login multi user level untuk admin utama, kepala sekolah dan wali kelas. Ok lanjut ke tutorialnya:
Pertama
Buat database dengan nama db_sekolah dan tabel dengan nama data_userCREATE TABLE `data_user` (
`id_user` int(5) NOT NULL AUTO_INCREMENT,
`nama_user` varchar(20) NOT NULL,
`user_name` varchar(20) NOT NULL,
`pass_user` varchar(20) NOT NULL,
`level_user` enum('Admin','Wali Kelas','Kepala Sekolah') NOT NULL) ;
--
-- Dumping data untuk tabel `data_user`
--
INSERT INTO `data_user` (`id_user`, `nama_user`, `user_name`, `pass_user`, `level_user`) VALUES
(1, 'Rafiqi', 'fiqie_yes', '123456', 'Admin'),
(2, 'M.Rifki', 'rifki02', '654321', 'Kepala Sekolah'),
(3, 'Maftuh G', 'maftuh', '1234567', 'Wali Kelas');
Kedua
Buat file login.php, koneksi.php dan cek_login.phplogin.php
<!DOCTYPE html>
<html>
<head>
<title>Login Multi User</title>
</head>
<body>
<?php
if(isset($_GET['pesan'])){
if($_GET['pesan'] == "gagal"){
echo "<div class = 'alert'>Maaf sesi telah berakhir!</div>";
}
}
?>
<form action="cek_login.php" method="post">
<h2>Silahkan login</h2>
<label >Username</label>
<input type="text" name="user_name" placeholder="Username" required autofocus>
<br>
<br>
<label>Password</label>
<input type="password" name="pass_user" placeholder="Password" required>
<br>
<br>
<button type="submit" name="submit">Login</button>
</form>
</body>
</html>
koneksi.php
<?php
define('DB_HOST','127.0.0.1');
define('DB_USER','root');
define('DB_PASS',' ');
define('DB_NAME','sekolah');
$db_connection = mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
if(mysqli_connect_errno()){
echo 'Koneksi gagal: '.mysqli_connect_error();
exit();
}
?>
cek_login.php
<?php
session_start();
include 'koneksi.php';
$user_name = $_POST['user_name'];
$pass_user = $_POST['pass_user'];
// mengambil data dari tabel data_user
$check_login = mysqli_query($db_connection,"SELECT * FROM data_user WHERE user_name = '$user_name' AND pass_user = '$pass_user'");
$check = mysqli_num_rows($check_login);
if($check > 0){
$data = mysqli_fetch_assoc($check_login);
if($data['level_user'] == "Admin"){
$_SESSION['user_name'] = $user_name;
$_SESSION['level_user'] = "Admin";
header("location:admin/adm1/index.php");
}else if($data['level_user'] == "Wali Kelas"){
$_SESSION['user_name'] = $user_name;
$_SESSION['level_user'] = "Wali Kelas";
header("location:admin/adm2/index.php");
}else if($data['level_user'] == "Kepala Sekolah"){
$_SESSION['user_name'] = $user_name;
$_SESSION['level_user'] = "Kepala Sekolah";
header("location:admin/adm3/index.php");
}else{
header("location:login.php");
}
}else{
header("location:login.php");
}
?>
Ketiga
Tambah folder dengan nama admin lalu dalam folder admin tambah 3 folder adm1, adm2 dan adm3. Kemudian pada ketiga foder tambahkan file index.php dan logout.phpindex.php dalam folder adm1
<?php
error_reporting('_NOTICE');
session_start();
// cek user login
if($_SESSION['level_user'] == ""){
header("location:../../login.php?pesan=gagal");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Adm 1</title>
</head>
<body>
<h2>Selamat Datang Pengunjung www.gurudzgn.com</h2>
<b><?php echo $_SESSION['user_name']; ?></b> Anda telah login sebagai <b><?php echo $_SESSION['level_user']; ?></b>
<a href="logout.php"> Log Out</a>
</body>
</html>
index.php dalam folder adm2
<?php
error_reporting('_NOTICE');
session_start();
// cek user login
if($_SESSION['level_user'] == ""){
header("location:../../login.php?pesan=gagal");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Adm 2</title>
</head>
<body>
<h2>Selamat Datang Pengunjung www.gurudzgn.com</h2>
<b><?php echo $_SESSION['user_name']; ?></b> Anda telah login sebagai <b><?php echo $_SESSION['level_user']; ?></b>
<a href="logout.php"> Log Out</a>
</body>
</html>
index.php dalam folder adm3
<?php
error_reporting('_NOTICE');
session_start();
// cek user login
if($_SESSION['level_user'] == ""){
header("location:../../login.php?pesan=gagal");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Adm 3</title>
</head>
<body>
<h2>Selamat Datang Pengunjung www.gurudzgn.com</h2>
<b><?php echo $_SESSION['user_name']; ?></b> Anda telah login sebagai <b><?php echo $_SESSION['level_user']; ?></b>
<a href="logout.php"> Log Out</a>
</body>
</html>
logout.php untuk folder adm1, adm2 dan adm, semuanya sama.
<?php
session_start();
session_destroy();
header('Location: ../../login.php');
?>
Sekian Semoga bermanfaat.