Файл регистрации, шифрования пароля:
$finite_password = password_hash($password, PASSWORD_DEFAULT);
$result2 = mysql_query ("INSERT INTO `users` (name, surname, login,
password, mail, bornDD, bornMM, bornYY, sex) VALUES ('$name', '$surname',
'$login', '$finite_password', '$mail', '$bornDD', '$bornMM', '$bornYY', '
$sex')");
if ($result2 === FALSE) {
echo "Ошибка записи в базу: ".mysql_error();
}
?>
Файл авторизации:
$result = mysql_query("SELECT * FROM users WHERE login='$login'",$db);
$myrow = mysql_fetch_array($result);
if (empty($myrow['password'])) {
exit ("Извините, введённый вами login или пароль неверный.");
}
else {
$query = mysql_query ("SELECT password FROM users WHERE login = '$login' LIMIT 1 ");
$finite_password = $query->fetch_assoc()['password'];
if ( password_verify($password, $finite_password) ) {
$_SESSION['login']=$myrow['login'];
$_SESSION['id']=$myrow['id']; ?>
<div class="centerr">
<div class="helpcenterr">
<br>
<?
echo "Вы успешно вошли на сайт, как ".$_SESSION['login']."!"." "."<a style='color:#8600D3; font-family:Arial;'; href='index.php'><br> Главная страница</a>";
echo "Вы зашли";
}
else {
exit ("Извините, введённый вами login или пароль неверный.");
}
}
Пишет ошибку: Call to a member function fetch_assoc() on a non-object in W:\domains\work\reg\enter.php on line 87 87 строка: $finite_password = $query->fetch_assoc()['password']; Не понимаю, что не так. Помогите разобраться или расскажите, где я не так что понял по проверке пароля через password_verify; Я новичок в этом всем, если не сложно опишите процесс, где я ошибся.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости