要确保不出上面的错误,就要确保传递给 mysql_fetch_array 的参数是资源句柄 , 也就是要确保 mysql_query($sqltext) 能得到正确的结果,也就是 $sqltext 的内容(SQL)是正确的。
你可以跟踪查看一下运行过程中 $sqltext 的内容,最简单的办法如下:
$num = @$_GET["num"];
$sqltext = "select * from yaopinbiao where num=".$num;
echo $sqltext; //新增用于调试
$arr = mysql_query($sqltext);
看 $sqltext 内容是否正确,也可以将这个结果直接复制到 mysql 里执行。
从代码看,如果 $num = @$_GET["num"]; 这句代码里,从 _GET 全局数组里没有 num 这个数组元素,或是没有正确赋值的话,就会导致出错。
最简单的办法,是加个检测判断的语句,
if isset($_GET["num"]) {
$num = @$_GET["num"];
//其他的代码
}