没有找到行时,mysql_num_rows不返回任何内容

时间:2012-11-02 12:11:08

标签: php mysql

我正试着解决这个问题。

  $can = $r6['candidate_id'] ; 
  $checkquery = mysql_query("SELECT * FROM candidate 
  WHERE candidate_id ='$can' and type='facrep'") or die(mysql_error());  
  if (mysql_num_rows($checkquery) > 0) {
     echo ">0" ; 
  }else {
     echo "0" ; 
  }

如果数据库中有记录,则会成功返回>0,但如果没有记录,则不返回任何内容,甚至不返回0。因此,else语句永远不会有效。

想法?

1 个答案:

答案 0 :(得分:0)

mysql_num_rows在没有找到任何行的情况下返回bool false。所以你要重新编写代码

  $can = $r6['candidate_id'] ; 
  $checkquery = mysql_query("SELECT * FROM candidate 
  WHERE candidate_id ='$can' and type='facrep'") or die(mysql_error());  
  if (mysql_num_rows($checkquery)) {
     echo ">0" ; 
  }else {
     echo "0" ; 
 }

这会有希望帮助你!