如何捕捉warning错误?

山雨欲来-风满楼 2005-05-29 11:15:02
我用下面的语句老是出警告,这是为啥?
$rs=mysql_query($sql) or die(mysql_error());//这一行正常,能正确返回$rs记录集
$RecordNums=mysql_num_rows($rs) or die(mysql_error());//如果加 or die(mysql_error())则中止程序运行,但并不会显示出warning的信息,难道警告信息不是用mysql_error()来捕捉?那得用什么呢?如果不加or后面的,则会出warning信息,烦死了。难道是不能用mysql_num_rows($rs)来取得记录数?

注:我没有服务器修改PHP.INI的权限。
...全文
393 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
就是这一行出错!
正如上面说的,如果表中有数据,则不会出warning!
我给$RecordNums=mysql_num_rows($rs)加上 or die(mysql_error())则程序停止执行!但却也不会出那个warning。
所以,我现在想要知道的是怎么捕捉这个warning,因为用mysql_error()无法显示它。
我记得在PHP.INI中可以设置不显示warning,但我没有权限修改这个文件。
涩色滴人 2005-06-19
  • 打赏
  • 举报
回复
$RecordNums=mysql_num_rows($rs);
这一行是不会出那个warning的,你仔细看看是哪一行的问题。
后面的你应该这样才对:

if ($RecordNums>0)
{
//..........
}
else
echo "No Result.";

  • 打赏
  • 举报
回复
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in SystemVar.php on line 26
xuzuning 2005-06-02
  • 打赏
  • 举报
回复
你没有贴出错误信息
你的判断可能是错误的
  • 打赏
  • 举报
回复
没查到数据不是错误
从没有数据的资源里取数据才是错误!!

确实如此,好像表中无数据中才会出warning,输入数据马上就OK了。
可这个函数mysql_num_rows($rs)只是取得记录个数呀,想不到这样也会报错,汗~~~


原因是找到了,可是有办法解决吗?

期待高手。。。
bingofei 2005-05-30
  • 打赏
  • 举报
回复
php5.0的话,可以用try..catch
xuzuning 2005-05-30
  • 打赏
  • 举报
回复
给出warning信息
-神仙- 2005-05-29
  • 打赏
  • 举报
回复
没查到数据不是错误
从没有数据的资源里取数据才是错误
涩色滴人 2005-05-29
  • 打赏
  • 举报
回复
如果查询未返回行的话,就会出warning了。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧