Password_verify () возвращает False с правильным паролем - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь создать страницу входа, используя PHP и MongoDB. Во время входа в систему я принимаю пароль как <input type="text" name="password" placeholder="Password">, а в коде PHP я проверяю, используя password_verify. Несмотря на то, что я ввожу правильный пароль, я получаю неверный пароль в качестве вывода.

if(isset($_POST['login'])){
        print_r($_POST);


        $email = $_POST['email'];
        $upass = $_POST['password'];
        $criteria = array("email"=> $email);
        $query = $usercollection->findOne($criteria);
        var_dump($query);
        if(empty($query)){
            echo "Email ID is not registered.";
            echo "Either <a href='register.html'>Register</a> with the new Email ID or <a href='loginuser.html'>Login</a> with an already registered ID";
        }
        else{

            $pass = $query["password"];
                if(password_verify($upass,$pass)){
                $var = setsession($email);
                print_r($_SESSION);
                echo "Password match";

                if($var){

                    /*header("Location: home.php");*/ echo "Login success";
                }
                else{
                    echo "Some error";
                }
            }
            else{
                echo "Password not match";
                echo "You have entered a wrong password";
                echo "<br>";
                echo "Either <a href='register.html'>Register</a> with the new Email ID or <a href='loginuser.html'>Login</a> with an already registered ID";
            }
        }
    }

1 Ответ

0 голосов
/ 15 апреля 2019

password_verify () сопоставляет ваш входной пароль с хешем, хранящимся в базе данных.Убедитесь, что вы сохранили свой пароль как хеш в базе данных, используя функцию password_hash ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...