mysql_num_rows没有返回零

时间:2014-06-19 11:23:19

标签: php sql select mysqli mysql-num-rows

有没有人知道为什么以下mysqli_num_rows在没有结果时没有返回零?而不是显示' 0'它根本不显示任何内容。完全莫名其妙。编辑<< msqli_num_rows工作正常并在有结果时显示一个数字,当没有任何结果时它就不是......

   $result = mysqli_query($con,"
           SELECT LastName 
           AS sLast, FirstName
                AS sFirst
           FROM students
                 LEFT JOIN
                 (SELECT id, name
                 FROM employers)
                 a ON a.id = $e_id
           WHERE WK1 = a.name");
    while($row = mysqli_fetch_array($result)) { 
    $wk1 = mysqli_num_rows($result);
    echo $row['sLast'] .", ".$row['sFirst']."<br>";
    }

2 个答案:

答案 0 :(得分:3)

如果没有行,则无法获取任何内容,因此您的循环永远不会运行。首先尝试获取num_rows。

$wk1 = mysqli_num_rows($result);
while($row = mysqli_fetch_array($result)) {     
    echo $row['sLast'] .", ".$row['sFirst']."<br>";
}

答案 1 :(得分:-1)

  1. 如果找到匹配的记录,mysqli_query将返回结果。
  2. 如果没有找到记录,则返回false,因此在false情况下不会返回0。