sql >> Databáze >  >> RDS >> Mysql

Interní chyba serveru PHP 500 při volání Volley

Zjistil jsem, kde byl můj problém. Pro všechny, kteří se setkají s velmi ošklivou chybou 500, zkontrolujte své protokoly. Přišlo mi, že jakmile jsem zkontroloval protokoly, zjistil jsem, že metoda checkhashSSHA() nebyl nikdy použit a způsobilo to následující chybu:

PHP Fatal error:  Call to undefined function checkHashSSA() in /xxx/xxx/xxx/xxx/UserFunctions.php on line 54

Proto jsem přidal následující kód pro dešifrování hesla:

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;
    }
}

Toto vyřešilo mou chybu.

Jen pro pořádek, protokoly takových chyb se obvykle nacházejí v následujícím umístění:var/log/apache2/error.log Možná budete muset provést nějaké změny v souboru php.ini, aby se tyto chyby zaprotokolovaly.

Doufám, že to někomu pomůže s chybou 500;)




  1. Dotaz MySQL, kde JOIN závisí na CASE

  2. mysql trigger s vložením a aktualizací po vložení na stůl

  3. SQL Server:Selhání komunikačního spojení Požadováno SSL (nepodařilo se přijmout paket)

  4. Jak dotazovat tabulku SQL a odstranit duplicitní řádky ze sady výsledků