J'ai trouvé d'où venait mon problème. Pour tous ceux qui rencontrent la très désagréable erreur 500, vérifiez vos logs. Il m'est apparu qu'une fois que j'ai vérifié les journaux, j'ai trouvé que la méthode checkhashSSHA()
n'a jamais été utilisé, ce qui provoquait l'erreur suivante :
PHP Fatal error: Call to undefined function checkHashSSA() in /xxx/xxx/xxx/xxx/UserFunctions.php on line 54
J'ai donc ajouté le code suivant pour déchiffrer le mot de passe :
public function getUserByEmailAndPassword($email, $password) {
$stmt = $this->conn->prepare("SELECT * FROM users WHERE UserEmail = ?");
$stmt->bind_param("s", $email);
if ($stmt->execute()) {
$user = $stmt->get_result()->fetch_assoc();
$salt = $user['salt'];
$userPassword = $user['UserPassword'];
$hash = $this->checkhashSSHA($salt, $password);
if ($userPassword == $hash) {
return $user;
}
$stmt->close();
} else {
return NULL;
}
}
Cela a résolu mon erreur.
Pour information, les journaux de ces erreurs se trouvent généralement à l'emplacement suivant :var/log/apache2/error.log
Vous devrez peut-être apporter des modifications au fichier php.ini pour enregistrer ces erreurs.
J'espère que cela aidera quiconque avec l'erreur 500;)