スクリプトの一番上にグローバル セットがありますが、それを実行すると、$db が未定義であることがわかります。
global $db;
$db = '';
$db = new Database($dbname, $host, $dbusername, $dbpassword, 'utf8', true, "Database Error");
function tryLogin($username, $password)
{
$row = $db->fetch_row("SELECT id, username, password, salt, email FROM users WHERE username = ?", true, array($username));
if(genPassWithSalt($POST['password'], $row['salt']) === $row['password'])
{
return $row;
}
else
{
return false;
}
}