我有两张桌子:
具有以下字段的“课程”:COURSE_ID(自动递增)、开始日期、结束日期、标题
具有以下字段的“courses_students”:ID(自动递增)、COURSE_ID、STUDENT_ID。
我想从我的另一个名为“courses”的表中插入一些名为“courses_students”的mysql表中的值。用户可以在页面中看到来自“课程”的数据(课程名称、开始日期、结束日期),并且他们必须通过单击“关注课程”按钮来选择他们想要参加的课程。
每次有人单击提交按钮时,这些值都会插入到 courses_students 表中,但不正确。问题是每次来自“courses_students”的 COURSE_ID 都具有来自“courses”的最后一个 COURSE_ID 的值。而且,另一个奇怪的问题是这些值每次都插入两次。
这是代码:
<?php
$link = mysql_connect('localhost','root','');
if(!$link){
die('Could not connect: '.mysql_error());
}
mysql_selectdb("db");
?>
<ul>
<?php
$sql = "SELECT * FROM courses";
$result = mysql_query($sql);
while($file = mysql_fetch_array($result)){
echo '<ul>';
echo '<li>';
$STUDENT_ID = $_SESSION['ID'];
$COURSE_ID = $file['COURSE_ID']; //**It dislays the CORRECT ID for each course!**
echo 'the course id: ' .$COURSE_ID;
echo 'course name: ' .$file['title'];
echo 'Starting: ' .$file['start_date'];
echo ' ending: '.$file['end_date'];
echo '<form action="lista_cursuri.php" method="post"> <input type="submit" name="submit" value="attent course!"> </form>';
echo '</li>';
}
?>
</ul>
<?php
if(isset($_POST['submit'])){
$sql1 = "INSERT INTO `courses_students` (COURSE_ID,STUDENT_ID) VALUES ($COURSE_ID,$STUDENT_ID)";
$result = mysql_query($sql1);
}
?>
我看不出问题出在哪里。也许这不是正确的程序。