Otorisasi Sederhana melalui Basis Data di PHP
Mari kita implementasikan otorisasi paling sederhana berbasis basis data, untuk sementara tanpa pendaftaran. Alih-alih mendaftarkan pengguna, kita akan langsung memasukkan login dan password mereka ke dalam tabel di basis data:
| id | login | password |
|---|---|---|
| 1 | user | 12345 |
| 2 | admin | 123 |
Sekarang mari buat form untuk memasukkan login dan password:
<form action="" method="POST">
<input name="login">
<input name="password" type="password">
<input type="submit">
</form>
Sekarang tulis kode yang akan memeriksa apakah form telah dikirim dan, jika ya, memeriksa apakah di basis data ada pengguna dengan login dan password tersebut:
<?php
if (!empty($_POST['password']) and !empty($_POST['login'])) {
$login = $_POST['login'];
$password = $_POST['password'];
$query = "SELECT * FROM users WHERE login='$login' AND password='$password'";
$res = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($res);
if (!empty($user)) {
// pengguna terotorisasi
} else {
// login atau password salah
}
}
?>
Implementasikan otorisasi yang dijelaskan di atas. Buatlah sehingga jika pengguna berhasil diotorisasi - pesan tentang hal itu ditampilkan, dan jika tidak berhasil - maka pesan bahwa login atau password yang dimasukkan salah.
Modifikasi kode sehingga dalam kasus otorisasi berhasil form untuk memasukkan password dan login tidak ditampilkan di layar.
Modifikasi kode sehingga dalam kasus otorisasi berhasil
terjadi pengalihan (redirect) ke halaman
index.php.
Modifikasi kode sehingga pada halaman
index.php ditampilkan pesan tentang
otorisasi berhasil. Selesaikan tugas ini melalui
pesan flash (flash messages) pada sesi.