在引用0行之前,我还没有遇到过这样的错误。它是否有特定的含义,或者仅仅是PHP在出现错误之前无法确定行号?
完整的警告是:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /xxxxxx/text_editor.php on line 0尽管出现警告,但除了此消息外,我的MySQL连接仍然完好无损,应用程序运行正常。
另外,我已经设置了error_reporting(0),所以我一开始就没想到会出现任何PHP警告。
我正在运行PHP 5.2.11,并且在其他相同的安装上无法重现该错误,在使用PHP 5.2.9或PHP 5.3.0时也无法重现该错误。鉴于上述情况,有人能为我解释一下这一点吗?
谢谢,如果你需要更多信息,请让我知道。
富足
发布于 2009-10-06 16:22:09
我发现了这个错误报告:http://bugs.php.net/bug.php?id=32101
提交人声称:
当在异常处理程序内部抛出异常时,会显示一条“异常抛出,没有堆栈框架,在第0行上未知”的消息。
不过,我不知道这是否适用于你的情况。您是否捕获到text_editor.php中的错误?
发布于 2009-10-06 19:05:07
嗯,你声明数组返回类型了吗?
mysql_fetch_array(data,array_type)
array_type
* MYSQL_ASSOC - Associative array
* MYSQL_NUM - Numeric array
* MYSQL_BOTH - Default. Both associative and numeric array可能需要返回类型,但具有默认行为。
发布于 2009-10-07 04:10:46
行0表示由于某种原因,PHP无法确定发生问题的更好的行号。
问题的根本原因似乎是您作为第一个(可能是唯一的)参数传递给mysql_fetch_array()的结果不是来自mysql_query()的有效结果。在使用结果集获取结果之前,您检查过mysql_query()本身是否成功返回了吗?
Phil Pafford提供的link提到了第一个参数:
需要
。指定要使用的数据指针。数据指针是mysql_query()函数的结果。
对于mysql_query,site也是这样说的
mysql_query()函数在MySQL数据库上执行查询。
此函数返回SELECT查询的查询句柄,其他查询返回TRUE/FALSE,失败时返回FALSE。
看看你的错误检查代码。对数据库的每个查询都可能失败- DBMS可能已经崩溃,如果没有其他问题的话。
https://stackoverflow.com/questions/1526274
复制相似问题