【问题标题】:Showing a message when no data found in SQL [duplicate]在 SQL 中找不到数据时显示消息 [重复]
【发布时间】:2021-04-08 21:25:20
【问题描述】:

我正在尝试在查询结果为空时显示“未找到数据”消息。

例如,如果我在数据库中有以下发票 ID:

 11
 12
 13

当用户输入发票 11 时,显示数据。但是当用户输入14个数据时显示“数据未找到”。

我尝试了以下方法,但它不起作用

if ( $SQLshow = '' ) {
    echo 'No data found in database!';
}

这是我的完整代码

<table>   
  <tbody>
                    <?php
                    $username = $_COOKIE['usernameloc'];
                    $invoice = $_GET['invoice'];
                    $SQLshow = mysqli_query($con,"
    SELECT * 
      FROM datapo 
     where username = '$username' 
       and Invoice_Number = '$invoice' 
     ORDER 
        BY id DESC 
     limit $offset
         , $dataperPage
    ");
                    $noUrut = 1;
                    while($row = mysqli_fetch_array($SQLshow)){
                    ?>
                    <div>
                    <tr>            
                        <td><?php echo $row[id]; ?></td>                        
                        <td><?php echo $row[Request_Date]; ?></td>              
                        <td><?php echo $row[Partner]; ?></td>                       
                        <td><?php echo $row[Package]; ?></td>
                    </tr>
                    <?php 
                    $noUrut++;
                    }


                    if ( $SQLshow = '' ) {
                       echo 'No data found in database!';
                    }


                    ?>
                </div>
 </tbody>
</table>

【问题讨论】:

  • 了解 sql 注入以及准备和绑定查询的重要性

标签: php mysqli


【解决方案1】:

您可以使用返回行数的 num_row:

if($query->num_rows){
 while($row = mysqli_fetch_assoc($query){
  echo 'row';
 }
}else{
 echo 'no result';
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-10
    • 2017-11-16
    • 2018-03-10
    • 2013-04-21
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多