首页 资讯 电脑入门 操作系统 上网 办公 技巧 硬件 软件 网络 图像 多媒体 程序 数据库 网页网站 网游 安全 加密 企业

PHP+MySql 数据库开发出现“supplied argument is not a valid MySQL result resource in XXX”错误是什么原因?

巧巧电脑网络 2012-06-25     收藏此文 
PHP数据库开发出现“supplied argument is not a valid mysql result resource in XXX”错误也是很烦人的。 最近用php和mysql数据库搞开发,运行一个页面时得到如下错误:supplied argument is not a valid MySQL result resource in XXX。

PHP数据库开发出现“supplied argument is not a valid MySQL result resource in XXX”错误也是很烦人的。

最近用phpmysql数据库搞开发,运行一个页面时得到如下错误:supplied argument is not a valid MySQL result resource in XXX,后面的xxx当然是指哪个文件中的哪行了,此处省略。

开始以为这个是个小错误,没什么大不了的,运用echo,把查询语句输出一下,发现语句一切正常。但是错误却仍然存在,于是用输出的sql语句又在phpMyAdmin中运行,得到想要的结果。

这下感到问题大了,因为查不出什么原因,但是出错的语句就在 $result = mysql_query($sql) 上,也就是说$result得不到一个数据集,导致后面的$row = mysql_fetch_array($result)自然也就无法运行了。于是so了一下,发现大多都是由于sql语句运行出错导致这个错误。但是我的sql语句并没有出错啊。后来终于找到一个调试方法,呵呵,在上面的运行语句中追加or die(mysql_error),也就是把$result = mysql_query($sql)语句改称为如下形式:

$result = mysql_query($sql, $remoteConn) or die(mysql_error);  //使用die语句可以调试出具体的出错信息

这样再把php文件上传服务器,然后刷新浏览器。终于发现问题所在。原来此php页面所使用的数据库用户没有针对该表的查询权限。也就是说,php使用的数据库用户权限不够,这自然会返回错误了。重新把权限分配一下,再执行,一切ok了。

因此,die(mysql_error)是一个很重要的调试语句,希望大家都能够掌握它并灵活运用。转载请注明来自巧巧读书,谢谢!

相关文章:mysql 时间函数用法 集合

mysql> SELECT something FROM tableWHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;。DAYOFWEEK(date)返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。mysql> select DAYOFWEEK('1998-02-03');-> 3。WEEKDAY(date)返回date的星期索引(0=星期一。

下一篇:
本类最热图文
Google
巧巧电脑网络编辑信箱  告诉我们您想看的专题或文章