У меня есть этот код PHP. Переменная $ password имеет назначенный статический пароль (не требуется ввод пользователя для проверки).
$ data [‘password’] также возвращает правильный хеш при печати его с помощью echo.
Но почему-то функция password_verify не работает в этой функции. Когда я использую его вручную с теми же входами, он работает нормально.
Может быть, что-то не так с запросом PDO, но я понятия не имею, что.
$this->mysql->query("SELECT * FROM user WHERE username = :username LIMIT 1");
$this->mysql->bind(':username', $username);
$data = $this->mysql->single();
if($this->mysql->rowCount() == 1)
{
echo $data['password'];
if(password_verify($password, $data['password']))
{
echo "yees!";
}else{
$this->user_error = true;
}
}else{
$this->user_error = true;
}
Так что я понял это.
Там, где в массиве есть несколько пробелов, но я понятия не имею, откуда они взялись.
Так что я судил trim()
функция, чтобы удалить эти пробелы, и теперь все работает правильно.
Спасибо за быструю помощь!
Других решений пока нет …