Loading...
Обучение/Помощь новичкам | Как это возможно?
Всем привет, почему при Неправильном вводе пароля все равно перебрасывает на user.php? если переадресацию убрать, то проверка работает нормально, объясните, вот кусок кода
php
   if(isset($_POST['ok'])){ 
if(!empty($login) && !empty($password)){
echo "Вы не ввели логин или пароль";
}else{
$sql = mysqli_query($con,"SELECT * FROM `accounts` WHERE `login`='$login' ");
$data = mysqli_fetch_array($sql);

$password = password_verify($_POST['password'], $data['password']);
if($password == $data['password']){
header('Location: user.php');

}else{
echo "Не правильный логин или пароль";

}
}
}
368389611 (16.10.2020 в 17:29)
Всем привет, почему при Неправильном вводе пароля все равно перебрасывает на user.php? если переадресацию убрать, то проверка работает нормально, объясните, вот кусок кода
php
   if(isset($_POST['ok'])){ 
if(!empty($login) && !empty($password)){
echo "Вы не ввели логин или пароль";
}else{
$sql = mysqli_query($con,"SELECT * FROM `accounts` WHERE `login`='$login' ");
$data = mysqli_fetch_array($sql);

$password = password_verify($_POST['password'], $data['password']);
if($password == $data['password']){
header('Location: user.php');

}else{
echo "Не правильный логин или пароль";

}
}
}

А где err???
368389611 ,
php
   if(isset($_POST['ok'])){ 

if(empty($login) && empty($password)){
$err = true;
echo "Вы не ввели логин или пароль";}
if(!$err)
{
$sql = mysqli_query($con,"SELECT * FROM `accounts` WHERE `login`='$login' ");
$data = mysqli_fetch_array($sql);

$password = password_verify($_POST['password'], $data['password']);
if($password == $data['password']){
header('Location: user.php');

}else{
echo "Не правильный логин или пароль";

}
}
}
попробуй где-то так
________
посл. ред. 16.10.2020 в 18:09; всего 1 раз(а); by Nemos
php
   if($password == $data['password']){ 

header('Location: user.php');


Вот тут ошибка. А если пользователь не ввел пароль, но оставил логин. Второй момент, Логина нет, а пароль введён. 3 момент, оба поля не введены данные. Во всех трёх моментов нужно выводить ошибки. Пароль хешировать и убирать спец символы ' в полях.
Онлайн: 2
Время:
Gen. 0.0664
(c) Bym.Guru 2010-2026