Это мой код
$username = $_POST['user'];
$password = $_POST['pass'];
if (isset($_POST['user'])); {
$db = mysqli_connect('localhost', 'root', '', 'db');
if($query = mysqli_query($db, "SELECT `pass` FROM `accounts` WHERE `user` = '$username'")){
while($row = mysqli_fetch_assoc($query)){
$row['pass'] = $setpassword;
}
mysqli_free_result($query);
}
}
То, что он в данный момент делает, это из формы, извлекает имя пользователя и пароль, которые он ввел, берет это имя пользователя и находит строку с этим именем пользователя, получает пароль из этой строки и устанавливает его как переменную $ setpassword. Ниже приведен код для проверки соответствия пароля указанному имени пользователя в базе данных.
if ($password=='') {
$verify = 0;
}
if ($password!='') {
if ($password!=$setpassword) {
$verify = 1;
}
if ($password==$setpassword) {
$verify = 2;
}
}
Если проверить ...
0 - Форма входа появится, поскольку ничего не было введено.
1 - Неверный пароль будет отображаться вместе с формой входа.
2 - Будет отображен правильный пароль и имя пользователя будет присвоено переменной сеанса.
У меня проблема с тем, что пользователь может ввести несуществующее имя пользователя и ввести любой пароль в базу данных или нет, и оно будет проверено.
Что я могу сделать, чтобы проверить, не существует ли имя пользователя в базе данных?