Проверка пароля, которая обрабатывает четыре случая if для php в кодеPhp

Кемеровские программисты php общаются здесь
Anonymous
Проверка пароля, которая обрабатывает четыре случая if для php в коде

Сообщение Anonymous »

Я новичок в PHP, но нам поручено выполнить проверку пароля в нашей базе данных, которая обрабатывает три сценария:
  • имя пользователя найдено, пароль верен = успешно
  • имя пользователя найдено, пароль неверный = неверный пароль
  • имя пользователя не найдено, пароль найден = неправильное имя пользователя
    < li>и имя пользователя, и пароль не найдены = оба неверны.
Выполнение первых трех было достаточно осуществимым, но включая четвертый случай проверки, когда пользователь и пароль неправильный всегда все портит, из-за чего один из других случаев больше не появляется. У меня есть следующий код:
if(isset($_POST['signIn'])){
$username=$_POST['username'];
$password=$_POST['password'];
$password=md5($password) ;

$sql="SELECT * FROM users WHERE username='$username'";
$result=$conn->query($sql);
if($result->num_rows>0){
$user = $result->fetch_assoc();
if ($user['password'] === $password) {
session_start();
$_SESSION['username'] = $user['username'];
header("Location: dashboard.php");
exit();
} else {
// Redirect back to login page with an error parameter for incorrect password
header("Location: login.php?error=invalid_password");
exit();
}
}
else{
// Redirect back to login page with an error parameter for incorrect username
header("Location: login.php?error=invalid_username");
exit();
}
}
?>


Подробнее здесь: https://stackoverflow.com/questions/785 ... in-vs-code

Вернуться в «Php»