2017-03-08 18 views
-2

私はチュートリアルを使用してブログの管理者ログインを作成しています。私はこのエラーをログインする]ボタンをクリックすると表示されます。致命的なエラー:未定義のメソッドを呼び出すUser :: password_verify()

Fatal error: Call to undefined method User::password_verify() in D:\XAMPP\htdocs\ICT PRoject\class.user.php on line 50

私はpassword_verify()関数を言う別の返事の質問を見てきましたが唯一以降、PHP 5.0から含まれていました。しかし、私はチェックし、私のバージョンはPHP 5.6.8です。私は他のアイデアを持っていないので、どんな助けも大歓迎です! 相続人はエラーがから来ている関数にコード:

public function login($username,$password){ 

    $hashed = $this->get_user_hash($username); 

    if($this->password_verify($password,$hashed) == 1){ 

     $_SESSION['loggedin'] = true; 
     return true; 
    }  
} 
+4

変更この'場合(の$ this - > password_verify($のパスワード、ハッシュ化された$)== 1){ '($パスワード:AND関数はブール値ではなく、1トライを返します。 、$ hashed)){ ' – Mario

+0

そして' $ this 'が何を意味しているかを確認してください。 –

+0

誰がこの質問とすべての答えを説明なしでdownvoted? – symcbean

答えて

0
public function login($username,$password){ 

    $hashed = $this->get_user_hash($username); 

    if(password_verify($password,$hashed) == 1){ 

     $_SESSION['loggedin'] = true; 
     return true; 
    }  
} 

パスワードを確認するには、PHPの関数が$このなしでそれを使用してみてくださいです。 関数を呼び出してブール値をチェックするだけです。

-1

Password_verify()は組み込み関数ですが、現在のオブジェクトのメソッドとして呼び出そうとしています。 (password_verify場合 `へ

if(password_verify($password,$hashed)){ 
関連する問題