这一行:
<?php echo $row_stuCompSci['Cid']; ?>
给我未定义的索引错误。但我不明白为什么当其他查询没有时,这会给我一个错误。这是我使用的查询。这一切都是在Dreamweaver中完成的
mysql_select_db($database_project, $project);
$query_stuCompSci = "SELECT compsci.CSid FROM compsci WHERE NOT EXISTS ( SELECT studentcourses.Cid FROM studentcourses WHERE studentcourses.Cid=compsci.CSid )";
$stuCompSci = mysql_query($query_stuCompSci, $project) or die(mysql_error());
$row_stuCompSci = mysql_fetch_assoc($stuCompSci);
$totalRows_stuCompSci = mysql_num_rows($stuCompSci);
在查询中,表studentcourses有两列(Sid,Cid),第二表compsci也有两列(CSid,Credits)。
查询获取学生课程中不存在的任何Cid,当我测试查询时它工作正常,但是,当我尝试查看我的网站时它会给我索引错误。如果需要,我可以在这里复制我的整个代码,但它大约有220行。
答案 0 :(得分:4)
您的查询包含:
SELECT compsci.CSid FROM ...
请注意,查询为CSid
,而非Cid
答案 1 :(得分:1)
这意味着你没有在查询中选择Cid
尝试
"SELECT compsci.Cid,compsci.CSid FROM compsci WHERE NOT EXISTS ( SELECT studentcourses.Cid FROM studentcourses WHERE studentcourses.Cid=compsci.CSid )";
答案 2 :(得分:0)
您正在Php中调用Cid
<?php echo $row_stuCompSci['Cid']; ?>
但未在查询中选择Cid
。这样做
SELECT compsci.Cid,compsci.CSid FROM ....