无法在MySQL中获取登录表单的哈希密码

时间:2019-04-06 07:42:48

标签: php mysql

我制作了一个登录表单,虽然注册表单可以正常运行,但是登录表单似乎无法正常工作。 $user$pwd被声明,但是$pwd_hashed保持为空。

if(isset($_GET['login'])) {
   $user = $_POST['user'];
   $pwd = $_POST['pwd'];

   $stmt = $pdo->prepare("SELECT * FROM users WHERE user = :user");
   $result = $stmt->execute(array('user' => $user));
   $pwd_hash = $stmt->fetch();

   if ($pwd_hash !== false && password_verify($pwd, $pwd_hash['password'])) {
      $_SESSION['userid'] = $pwd_hash['id'];
      die('Login successful<br>');
   } else {
      $errorMessage = "Username or password doesn't match<br>";
   }
}
if(isset($errorMessage)) {
   echo $errorMessage;
}

代码应该像这样工作吗,我只是在命名方面出现了问题,或者代码中有错误?

1 个答案:

答案 0 :(得分:0)

此表单包含在另一个已选择数据库的站点中。通过删除它(;dbname=test并指定用户数据库(users.users),问题就解决了。