Проста авторизация чрез база данни на PHP
Нека реализираме най-простата авторизация на базата на база данни, засега без регистрация. Вместо регистрация на потребители, ние просто ще въведем техните потребителски имена и пароли в таблица в базата данни:
| id | login | password |
|---|---|---|
| 1 | user | 12345 |
| 2 | admin | 123 |
Нека сега направим форма, в която ще се въвеждат потребителско име и парола:
<form action="" method="POST">
<input name="login">
<input name="password" type="password">
<input type="submit">
</form>
Нека сега напишем код, който ще проверява дали формата е изпратена и, ако е изпратена, да проверява дали в базата данни има потребител с такова потребителско име и парола:
<?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)) {
// потребителят е авторизиран
} else {
// грешно потребителско име или парола
}
}
?>
Реализирайте описаната по-горе авторизация. Направете така, че ако потребителят премине авторизацията - да се извежда съобщение за това, а ако не премине - съобщение, че въведеното потребителско име или парола са грешни.
Модифицирайте кода така, че в случай на успешна авторизация формата за въвеждане на парола и потребителско име да не се показва на екрана.
Модифицирайте кода така, че в случай на успешна
авторизация да се извърши пренасочване към страницата
index.php.
Модифицирайте кода така, че на страницата
index.php да се извежда съобщение за
успешна авторизация. Решете задачата чрез
флаш съобщения в сесии.