教师检索在他/她教授的课程中注册的学生

  • 本文关键字:程中 注册 检索 php mysql
  • 更新时间 :
  • 英文 :


我正在建立一个简单的网站,帮助大学的学生和教师。

我面临有关以下查询的问题:教师检索在他/她教授的课程中注册的学生的 ID 和姓名。

我有以下表格,后跟它们的字段:
注册(课程代码 - 学生证 - 年级)
Studnet (ID - 名称)

如您所见,两个表之间的唯一连接器是学生 ID。

我写的代码是

<?
session_start();
$COCODE = $_SESSION['GlobalCode'];
$result11 = mysql_query("SELECT * FROM Enrollment WHERE CourseCode = '$COCODE' ") ;
$row11 = mysql_fetch_array($result11);
$StID = $row11['StudentID'];
$result22 = mysql_query("SELECT * FROM Student where StudentID= '$StID' ") ;
echo "<table border cellpadding=3>";
while($row123 = mysql_fetch_array($result22)) 
 { 
 echo "<tr>";
 echo "<td>".$row123['ID']."</td> ";
 echo "<td>".$row123['Name']."</td> ";
 echo "</tr>";
 } 
echo "</table>"; 
?>

我正在尝试做的是从注册表中检索课程代码,然后通过 ID 检索学生姓名。

问题是我收到以下消息:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource

我希望你能帮我解决问题。

谢谢

您是否尝试缩小导致问题的查询范围?这将是你的第一步。其他一些指针:

  1. 您需要检查每个 SQL 查询是否成功并返回一个有效值,然后再在下一个查询中使用它......否则,该查询将导致错误。

  2. 尝试使用:mysql_query ($your_query) or die ('Error: '.mysql_error ()); for each 查询以获取更详细的错误消息。(仅用于调试,不用于生产)

该错误通常意味着您的查询有问题,或者您可能没有连接到数据库。如果这是第一个问题,请尝试将查询更改为以下内容:

$result11 = mysql_query("SELECT * FROM `Enrollment` WHERE `CourseCode` = '$COCODE' ");

否则,请检查数据库连接。

最后,我解决了它。

我做了以下更改:

$result11 = mysql_query("SELECT * FROM Enrollment WHERE CourseCode = '$InstID' ") or die ('Error: '.mysql_error ());
echo "<table border cellpadding=3>";
while($row11 = mysql_fetch_array($result11))
{
$StID = $row11['StudentID'];
$result22 = mysql_query("SELECT * FROM Students where ID = '$StID' ") or die ('Error: '.mysql_error ()); 
while($row123 = mysql_fetch_array($result22)) 
{ 
echo "<tr>";
echo "<td>".$row123['ID']."</td> ";
echo "<td>".$row123['Name']."</td> ";
echo "</tr>";
} 
}
echo "</table>"; 
mysql_close($con);
?>

谢谢

最新更新