MYSQL select 查询没有给出任何输出

MYSQL select query does not give any output

我的 SQL 查询无效。下面是我的代码,请注意 table 查询工作正常并提供输出。但是在 PHP 中使用 mysqli_num_rows()mysqli_fetch_assoc()mysqli_fetch_array() 对我来说都不起作用。 我的数据库连接是:

$conn = mysqli_connect($servername, $username, $password, $db);

注意:我的数据库连接很好。

$username = mysqli_real_escape_string($conn, $_POST['username']);
$password = mysqli_real_escape_string($conn, $_POST['password']);
$query = mysqli_query($conn, "SELECT * FROM `admin` WHERE `username`='$username'");

使用上述函数,此查询在 PHPMyAdmin 中结果为真,在 PHP 中结果为 returns 假。谁能回答我是不是搞错了?

我尝试通过以下方法执行该查询:

$row = mysqli_fetch_assoc(); // Results No Data
$data = mysqli_fetch_array($query); // Results No Data
$num = mysqli_num_rows($query); // Results 0 Data

您可以在使用之前执行查询:

<?php

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

$conn = mysqli_connect("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER BY ID DESC";

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

/* fetch associative array */
while ($row = mysqli_fetch_assoc($result)) {
  printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}

您使用 运行 mysqli_query 函数接收来自 DB 的结果:

$username = mysqli_real_escape_string($conn, $_POST['username']);

$query = "SELECT * FROM `admin` WHERE `username`='$username'";

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

$row = mysqli_fetch_assoc($result);

print_r($row);

PHP MySQL sandbox here