SELECT Batch.NumStud
FROM Batch
WHERE CourseID='$courseid'
INNER JOIN Course
ON Batch.CourseID=Course.CourseID"
表示mysql_fetch_array(): supplied argument is not a valid MySQL result resource in <b>F:\AppServ\www\anNoECourse.php
。编写此代码是为了将数据输入谷歌图表。
答案 0 :(得分:7)
您将SQL置于错误的订单(JOIN和WHERE已切换):
SELECT Batch.NumStud
FROM Batch INNER JOIN Course
ON Batch.CourseID = Course.CourseID
WHERE Course.CourseID = '$courseid'
看来,您的查询可以简化(检查您的数据):
select Batch.NumStud
from Batch
where Batch.CourseID = '$courseid'
答案 1 :(得分:0)
我认为错误有点复杂。由于您的SQL无效,您无法获得结果集。您的PHP代码无法正确处理此案例!
因此,除了像其他人建议的那样更正您的SQL之外,请确保处理您的PHP代码中没有结果或查询错误的情况!
解决方案的第二部分如下:
$result = mysql_query(...);
if ($result)
{
while (...)
...
}
这可以确保mysql_query
实际返回结果集而不是false
,如果出现错误(由于您的SQL代码无效,但在其他情况下也是如此)。因此,修复SQL并不足以使脚本出错。
但是,再次,不再使用mysql_....
函数!它们已被弃用。