我无法从数据库中获取任何数据输出,我只得到“0 个结果”作为 else 语句,这是怎么回事?

I can't get any data output from the database, i only get "0 results" as the else statement, what's the case?

我在使用 php 代码获取一些数据库信息时遇到了一些问题。 我得到的只是这条消息:"Connected successfully0 results"。 这是我的代码人员,提前感谢您的帮助。

 <?php
    $servername = "example";
    $username = "example1";
    $password = "example2";
    $row = array();

    $conn = new mysqli($servername,$username,$password);

    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    echo "Connected successfully";
    $sql = "Select Distinct subject from mobile_math_science_toc";
    $result = mysqli_query($conn, $sql);
    if ($result = $conn->query($sql)) {
        // output data of each row
        while($row = mysqli_fetch_assoc($result)) {
            echo "Subject " ,$row["subject"];
        }
    } else {
        echo "0 results ";
    }

    mysqli_close($conn);
    ?>

改变

$conn = new mysqli($servername,$username,$password);

 $conn = new mysqli($servername,$username,$password, "<your database name>");

    $result = mysqli_query($conn, $sql);
        if ($result = $conn->query($sql)) {
}

    $result = $conn->query($sql);
        if ($result) {
}

尝试

    if (mysqli_num_rows($result) > 0) {

正在检查您是否获得了数据

您应该在创建数据库连接时添加 dbname。您可以使用 mysqli_num_rows 函数来计算编号。行数。

<?php
    $servername = "example";
    $username = "example1";
    $password = "example2";
    $dbname = "your_db_name"; // Specify your db-name here.

    $conn = new mysqli($servername,$username,$password,$dbname);

    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    echo "Connected successfully";

    $sql = "Select Distinct subject from mobile_math_science_toc";
    $result = mysqli_query($conn, $sql);
    // Checking if there are some records available.
    if (mysqli_num_rows($result) > 0) {
        // output data of each row
        while($row = mysqli_fetch_assoc($result)) {
            echo "Subject " ,$row["subject"];
        }
    } else {
        echo "0 results ";
    }

    mysqli_close($conn);
?>