我尝试了所有可能想到的方法,但仍继续收到此错误。
Mysql_fetch_assoc():在第41行的/ url /中,提供的参数不是有效的MySQL结果资源
if ( $_POST[submit] == "Submit" ) { $sql="INSERT INTO table (`content`, `userid`, `ttime`) VALUES ('$_POST[content]', '".$user_id."', '".time()."')"; $res = mysql_query($sql,$link) or die(mysql_error()); /* (line 41 is the following)*/ while($result = mysql_fetch_assoc($res)) { } }
我尝试打印出错误(没有错误会仅显示警告),我尝试更改查询,这是我能想到的一切。该代码可以正常工作-单击即完成插入,一切都很好,只是警告出现在._上。
有任何想法吗?
从php文档开始mysql_query()
mysql_query()
返回值 对于SELECT,SHOW,DESCRIBE,EXPLAIN和其他返回结果集的语句,mysql_query()成功时返回资源,错误时返回FALSE。 对于其他类型的SQL语句,例如INSERT,UPDATE,DELETE,DROP等,mysql_query()成功返回TRUE,错误返回FALSE。 返回的结果资源应传递给mysql_fetch_array()和其他用于处理结果表的函数,以访问返回的数据。 使用mysql_num_rows()来查找为SELECT语句返回的行数,或使用mysql_affected_rows()来查找受DELETE,INSERT,REPLACE或UPDATE语句影响的行数。 如果用户没有访问查询所引用表的权限,mysql_query()也将失败并返回FALSE。
对于SELECT,SHOW,DESCRIBE,EXPLAIN和其他返回结果集的语句,mysql_query()成功时返回资源,错误时返回FALSE。
对于其他类型的SQL语句,例如INSERT,UPDATE,DELETE,DROP等,mysql_query()成功返回TRUE,错误返回FALSE。
返回的结果资源应传递给mysql_fetch_array()和其他用于处理结果表的函数,以访问返回的数据。
使用mysql_num_rows()来查找为SELECT语句返回的行数,或使用mysql_affected_rows()来查找受DELETE,INSERT,REPLACE或UPDATE语句影响的行数。
如果用户没有访问查询所引用表的权限,mysql_query()也将失败并返回FALSE。