2017-03-08 2 views
-2

Ich benutze ein Tutorial, um einen Admin Login für einen Blog zu erstellen. Wenn ich auf die Schaltfläche klicken, um diese Fehler zu melden erscheint:Schwerwiegender Fehler: Aufruf an undefinierte Methode Benutzer :: password_verify()

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

Ich habe an einer anderen answerd Frage gesucht, die die password_verify() Funktion sagt nur von PHP 5.0 ab enthalten war. Allerdings habe ich überprüft und meine Version ist PHP 5.6.8. Ich habe keine anderen Ideen, deshalb wird jede Hilfe sehr geschätzt! Heres der Code auf die Funktion, dass der Fehler herkommt:

public function login($username,$password){ 

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

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

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

Änderung dieses 'if ($ this-> password_verify ($ password, gehasht $) == 1) { ' auf 'if (password_verify ($ password , $ hashed)) { ' – Mario

+0

Und stellen Sie sicher, Sie verstehen, was' $ this' bedeutet. –

+0

Wer hat diese Frage und alle Antworten ohne Erklärung abgelehnt? – symcbean

Antwort

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

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

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

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

Passwort verifizieren Funktion Php versuchen Sie es mit ohnedieser $. Rufen Sie einfach die Funktion auf und überprüfen Sie den Booleschen Wert.

-1

Password_verify() ist eine integrierte Funktion, aber Sie versuchen, es als eine Methode für das aktuelle Objekt aufzurufen. Und die Funktion gibt einen boolean, nicht 1. Versuchen:

if(password_verify($password,$hashed)){ 
Verwandte Themen