У меня проблема с подтверждением пароля.
Я пытаюсь получить хеш из моего столбца паролей, а затем проверить с помощью пароля из формы. Я не уверен, почему это не работает:
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email=$email");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash)) {
echo('Hello');
} else {
echo('Email or Password not mach');
}
Возвращается ошибка: mysqli_fetch_assoc () ожидает, что параметр 1 будет mysqli_result, учитывая логическое значение, но я обнаружил в стеке, что люди успешно его используют. Что я делаю неправильно? Спасибо заранее!
с уважением
попробуйте вот так и ваш возвращаемый массив mysqli_fetch_assoc, поэтому используйте $ hash [‘password’] вместо $ hash и, наконец, используйте одинарные кавычки в условии where.
$pass = mysqli_query($link, "SELECT password FROM male_users WHERE email='$email'");
$hash = mysqli_fetch_assoc($pass);
if (password_verify($password, $hash['password'])) {
echo('Hello');
} else {
echo('Email or Password not mach');
}
Других решений пока нет …