Проблема входа в систему с хэш-паролем с использованием PHP, mysql и PDO для доступа к базе данных.
Привет!
Я создал форму входа в систему с хешированием, но когда я пытаюсь войти в систему, она всегда возвращает true, даже если я ввел неправильный пароль. Ниже приведен мой код.
<?php session_start(); include("../config/db_connection.php"); $un=$_POST['username']; $pw=$_POST['password']; $password_hash=password_hash($pw, PASSWORD_BCRYPT); $stmt = $db->prepare("SELECT password from sys_user WHERE username=? AND password=?"); $stmt->execute(array($un, $pw)); $row_count = $stmt->rowCount(); if (password_verify($pw, $password_hash)) { $_SESSION["username"]=$un; echo "Correct"; } else { echo "user: " . $un. "<br>"; echo "pass: " . $password_hash. "<br>"; echo "Wrong Username or Password"; } ?>
Пожалуйста, помогите мне. Заранее спасибо.
Что я уже пробовал:
Много манипуляций с моим кодом.
Mohibur Rashid
Во-первых, то, как вы сравниваете, не имеет смысла. Как вы зарегистрировали пароль в первую очередь. Покажите нам запрос пожалуйста
Kenjiro Aikawa
Привет, сэр, Ниже приведен мой код для регистрации учетной записи.
Kenjiro Aikawa
Привет, я уже решил свою проблему. Большое вам спасибо за ваши предложения.