Ich kenne mich mit php nicht aus und kann den Fehler hier nicht finden. Das Skript holt sich 2 Variablen "Benutzername" und "Passwort" aus einer html-Datei und gleicht sie mit einer MySQL-Datenbank ab. Wenn ich es ausführe, erhalte ich die folgende Fehlermeldung "Query was empty"
<?
if ((!$_POST[username]) || (!$_POST[password])) {
header("Location: show_login.html");
exit;
}
$db_name = "testDB";
$table_name = "auth_users";
$connection = @mysql_connect("localhost", "admin", "pass") or die(mysql_error());
$db = @mysql_select_db($db_name, $connection) or die(mysql_error());
$slq = "SELECT * FROM $table_name WHERE username ='$_POST[username]' AND password = password('$_POST[password]')";
$result = @mysql_query($sql, $connection) or die(mysql_error());
$num = mysql_num_rows($result);
if ($num != 0) {
$msg = "<p>Congratulations, you're authorised!</p>";
} else {
header("Location: show_login.html");
exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Secret Area</title>
</head>
<body>
<? echo "$msg"; ?>
</body>
</html>