【问题标题】:If statement within while no showing empty tag [duplicate]if语句在while内没有显示空标签[重复]
【发布时间】:2019-05-21 16:20:11
【问题描述】:

为非营利组织构建自定义网站。挂断搜索页面。

这就是我所拥有的......

它显示结果,但对于空结果不显示任何内容。这个我想不通。

while($rowitem = mysqli_fetch_array($results)) 
    {

         If (empty($results))  
          {    

       echo 'NO RESULTS';


          }
         Else
         {
            echo  "<div>"; ..... 

在这之后有很多代码可以工作。

感谢任何人提供的任何帮助。我敢肯定,我搞砸了一些简单的事情。

【问题讨论】:

    标签: php if-statement search mysqli while-loop


    【解决方案1】:

    如果结果为空,while循环将不会运行,因此您需要在while之前检查:

    if(empty($results)){
        echo 'NO RESULTS';
    else{
        while($rowitem = mysqli_fetch_array($results)) {
            /* your code here */
        }
    }
    

    【讨论】:

    • 我已经尝试过这个并集成到我的代码中我仍然缺少一些东西 if(isset($_REQUEST['submit'])) { $sname = $_POST["srch"]; $conn = mysqli_connect($servername, $username, $password, $dbname); $sql = "SELECT * FROM members where lname = '$sname'"; $results = mysqli_query($conn, $sql); } if(empty($results)) echo '没有结果'; else{ while($rowitem = mysqli_fetch_array($results)) { 页面加载并显示“NO RESULT”,但是在搜索完成后,如果有任何结果,它将显示结果,如果没有,则什么都没有。
    【解决方案2】:

    您需要先用mysqli_num_rows()检查结果集中的行数,检查$results是否为空没有相同的效果(可能是false这意味着您的SQL未能运行)...

    if(mysqli_num_rows($results)){
        echo 'NO RESULTS';
    else{
        while($rowitem = mysqli_fetch_array($results)) {
            /* your code here */
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-29
      相关资源
      最近更新 更多