Давайте реализуем самую простую авторизацию на базе данных, пока без регистрации. Вместо регистрации пользователей, мы просто вобьем их логины и пароли в таблицу в базе данных:
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'";
$result = mysqli_query($link, $query);
$user = mysqli_fetch_assoc($result);
if (!empty($user)) {
// прошел авторизацию
} else {
// неверно ввел логин или пароль
}
}
?>
Реализуйте описанную выше авторизацию. Сделайте так, чтобы, если пользователь прошел авторизацию - выводилось сообщение об этом, а если не прошел - то сообщение о том, что введенный логин или пароль вбиты не правильно.
Модифицируйте код так, чтобы в случае успешной авторизации форма для ввода пароля и логина не показывалась на экране.
Модифицируйте код так, чтобы в случае успешной
авторизации происходил редирект на страницу
index.php
.
Модифицируйте код так, чтобы на странице
index.php
выводилось сообщение об
успешной авторизации. Решите задачу через
флеш-сообщения на сессиях.