Belajar PHP - Membuat login multiuser dengan PHP dan MySQL. Multiuser mempunyai arti dimana lebih dari satu user dapat menggunakan sebuah sistem secara bersamaan.
Kita akan membuat form login sederhana dan sebuah database. Disini saya beri nama databasenya login-test dan tabel users dengan struktur tabelnya seperti berikut:
Jika database beserta tabelnya sudah dibuat maka yang akan kita buat selanjutnya adalah file-file berikut:
- index.php
- admin.php
- operator.php
Oiya, kita buat file admin.php dan operator.php sebagai tujuan ketika login berhasil. Penjelasan lebih lanjutnya dibawah ges.
index.php
<?php
session_start();
// koneksi
$conn = new mysqli('localhost', 'root', '', 'login-test');
if (isset($_POST['submit'])) {
$uname = $_POST['username'];
$pass = $_POST['password'];
$q = mysqli_query($conn, "SELECT * FROM users WHERE username = '$uname' AND password = '$pass'");
if ($q->num_rows > 0) {
$d = $q->fetch_assoc();
// cek role user
if ($d['role'] == 1) {
header('Location: admin.php');
$_SESSION['nama'] = $d['nama_lengkap'];
} else {
header('Location: operator.php');
$_SESSION['nama'] = $d['nama_lengkap'];
}
} else {
// session untuk pesan kesalahan
$_SESSION['pesan'] = "Username atau Password tidak valid";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Login Multiuser</title>
</head>
<body>
<h1>Mencoba Login Multiuser</h1>
<?php
// tampilkan session pesan jika username atau password tidak valid
if (isset($_SESSION['pesan'])) {
echo '<p style="color:red;">'.$_SESSION['pesan'].'</p>';
unset($_SESSION['pesan']);
}
?>
<form method="post" action="">
<label>Username</label>
<input type="text" name="username">
<label>Password</label>
<input type="Password" name="password">
<button type="submit" name="submit">Login</button>
</form>
</body>
</html>
admin.php
Jika role user yang berhasil login adalah 1 kita asumsikan sebagai admin dan akan diarahkan ke file ini.
<?php
session_start();
echo "Hai <b>".$_SESSION['nama']."</b>! Kamu login sebagai <b>Admin</b>";
operator.php
Dan jika role user yang berhasil login adalah 2 kita asumsikan user sebagai operator yang akan diarahkan ke file ini.
<?php
session_start();
echo "Hai <b>".$_SESSION['nama']."</b>! Kamu login sebagai <b>Operator</b>";
Penjelasan:
// cek role user
if ($d['role'] == 1) {
header('Location: admin.php');
$_SESSION['nama'] = $d['nama_lengkap'];
} else {
header('Location: operator.php');
$_SESSION['nama'] = $d['nama_lengkap'];
}
Dengan menggunakan fungsi
if()
untuk menentukan apakah user adalah admin ataukah operator.Artikel terkait : Show hide form password dengan JavaScript
0 Komentar