从MySQL显示未找到的数据

时间:2019-01-02 11:51:40

标签: php mysqli

我编写了简单的代码以使用PHP从MySQL提取数据。

这是代码:

<?php
    $mangkal = $_POST['mangkal'];
    $lat = $_POST['lat'];
    $long = $_POST['long'];
    $mysqli = new mysqli("localhost", "root", "", "mad");
    $query = "SELECT * FROM kendaraan WHERE mangkal LIKE '%$mangkal%' ORDER BY id DESC";
    $result = $mysqli->query($query);
    $row = $result->fetch_array(MYSQLI_BOTH);
    {
        echo "<p>";
        echo "$row[id_kendaraan]";
        echo "<p>";
        echo "$row[mangkal]";
    }
?>
  1. 脚本正在运行,如果数据是通过db调用返回的,则可以看到显示的结果。但是,如果查询结果中没有数据,则脚本仅显示空白。我想显示一条消息-“未找到数据”。我该怎么办?

  2. 我有一个以上的查询记录,但脚本仅显示一个数据。请帮助我显示所有记录。

2 个答案:

答案 0 :(得分:1)

使用while循环,如下所示:

 if($result->num_rows > 0)
 {
   while($row = $result->fetch_array(MYSQLI_BOTH))
   {
     echo "<p>".$row[id_kendaraan]."</p><br><p>".$row[mangkal]."</p>";
   }
 } else {
     echo "No Record Found.";
 }

答案 1 :(得分:0)

您需要运行循环以遍历每个结果。与此类似的东西-

BigQueryGetDataOperator

在上面的代码中,使用<?php $mangkal = $_POST['mangkal']; $lat = $_POST['lat']; $long = $_POST['long']; $mysqli = new mysqli("localhost", "root", "", "mad"); $query = "SELECT * FROM kendaraan WHERE mangkal LIKE '%$mangkal%' ORDER BY id DESC"; $result = $mysqli->query($query); while($row = $result->fetch_array(MYSQLI_BOTH)) { echo "<p>"; echo "$row[id_kendaraan]"; echo "</p><p>"; echo "$row[mangkal]"; echo "</p>"; } ?> 循环逐个迭代结果。每次while都会更新新数据并打印出来。