PHP / MySQLi:登录表单不工作

PHP / MySQLi: Login form isn't working

我用 MySQL 为登录表单编写了 PHP 代码。 现在我听说使用 MySQLi 更好 - 所以我尝试重写代码。这是我的工作 MySQL 代码:

$username = $_POST["username"];
$password = md5($_POST["password"]);

$query = "SELECT username, password FROM accounts WHERE username LIKE '$username' LIMIT 1";
$result = mysql_query($query);
$row = mysql_fetch_object($result);

if($row->password == $password)
    {
    echo "<h3>Hallo $username</h3>";
    $_SESSION["username"] = $username;

    echo "Login succesfully:";
    }
else
    {
    echo "Login not succesfully";
    }

为了使用 MySQLi,我尝试将其更改为以下内容:

$username = $_POST["username"];
$password = md5($_POST["password"]);

$query = "SELECT username, password FROM accounts WHERE username LIKE '$username' LIMIT 1";
$result = mysqli_query($query);
$row = mysqli_fetch_object($result);

if($row->password == $password)
    {
    echo "<h3>Hallo $username</h3>";
    $_SESSION["username"] = $username;

    echo "Login succesfully:";
    }
else
    {
    echo "Login not succesfully";
    }

但不幸的是,这不起作用。

您需要将数据库连接字符串作为第一个参数传递给 mysqli_query(),将 SQL 字符串作为第二个参数。

在你的例子中,你只传递了一个参数。

这就是它不起作用的原因。

更正后的代码:

$result = mysqli_query($con,$query);