首页 > 解决方案 > 调用数组错误上的成员函数

问题描述

我得到错误:

Fatal error: Uncaught Error: Call to a member function LogInValidatePassword() on array in C:\xampp\htdocs\ProjectSouls\log-in.php:34

但不幸的是我找不到代码的问题。

在第 34 行LogInValidatePassword,对象的方法user被调用。在这种方法中,我使用password-verify($password, $hashed). 我从 $_POST 和数据库条目的哈希中传递密码,这些条目在数组中获取$fetched

//log-in.php

$post_userpass = filter_input(INPUT_POST,"user_name",FILTER_SANITIZE_SPECIAL_CHARS);    

$fetched = $statement->fetch(PDO::FETCH_ASSOC);
/*Line 34->*/ if($user->LogInValidatePassword($post_userpass,$fetched['user_pass'])){
   $user->LogIn($fetched);
}else{
   $user->ShowErrorResponse();
 }


//user.class.php
public function LogInValidatePassword($password, $hashed){
  if(!password_verify($password ,$hashed)){
    $this->errors[] = "Sie haben ein falsches Passwort eingegeben.";
    return false;
  }else{
    return true;
  }
}

由于我没有使用整个数组,而只是其中的一个值,所以我不知道问题可能出在哪里。

// 我浏览了类似的帖子,但没有找到任何相关的解决方案。

提前致谢。

标签: phpoop

解决方案


推荐阅读