Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource解决办法
相信许多初学php的同志们都遇到过类似的问题。
一大段代码中检查了又检查,mysql_num_rows()的语法根本没有错误啊,怎么一直提示错误呢???
我今天就是被这个问题堵了好久的时间,好多排错办法都试过,都没有用。
最后想到了用这个方法,是比较管用的,现总结如下。大家可以照此思路来进行排错:
-----------------------------------------------------------------------
$checksql="SELECT `id`FROM `reguser` WHERE `regname`='{$regname}'";
$checkquery=mysql_query($checksql);
$rusults=mysql_num_rows($checkquery);//返回结果集中行的数目。此命令仅对 SELECT 语句有效
--------------------------------------------------------------------------
(1)输出 $checksql,发现有值输出;
(2)打印 $checkquery,发现却没有任何输出;
(3)echo $rusults 发现一直没有输出结果;
由此断定肯定问题出在$checkquery处,也就是mysql_query()有问题,怎么找出问题呢?
加上: if(!$checkquery)
{ die(mysql_error());
exit; }
再运行,发现有错误说明了,我看到说明之后,发现时提示我的一个公共函数里面的选择数据库的参数没有改过来,找到问题所在了。
相信许多初学php的同志们都遇到过类似的问题。
一大段代码中检查了又检查,mysql_num_rows()的语法根本没有错误啊,怎么一直提示错误呢???
我今天就是被这个问题堵了好久的时间,好多排错办法都试过,都没有用。
最后想到了用这个方法,是比较管用的,现总结如下。大家可以照此思路来进行排错:
-----------------------------------------------------------------------
$checksql="SELECT `id`FROM `reguser` WHERE `regname`='{$regname}'";
$checkquery=mysql_query($checksql);
$rusults=mysql_num_rows($checkquery);//返回结果集中行的数目。此命令仅对 SELECT 语句有效
--------------------------------------------------------------------------
(1)输出 $checksql,发现有值输出;
(2)打印 $checkquery,发现却没有任何输出;
(3)echo $rusults 发现一直没有输出结果;
由此断定肯定问题出在$checkquery处,也就是mysql_query()有问题,怎么找出问题呢?
加上: if(!$checkquery)
{ die(mysql_error());
exit; }
再运行,发现有错误说明了,我看到说明之后,发现时提示我的一个公共函数里面的选择数据库的参数没有改过来,找到问题所在了。