【发布时间】:2012-03-15 08:18:13
【问题描述】:
每当我请求学生学期成绩(课程分数)时,我的这部分代码用于给学生分数打分。但是,只有一个特定的成绩会被授予所有分数,大多数时候上传到学生数据库的最后一个结果会被授予所有分数。当我在年级中添加句号时,即
$grade .= 'A';
$grade .= 'B';
$grade .= 'C';
$grade .= 'D';
$grade .= 'E';
所有等级在每一列中都重复了。所以假设一个特定的学生在一个学期学习了 6 门课程并且总共有
3 A's , 2 B's , 1 C
六门课程的每行都重复了所有 6 个等级。
在我生成的 HTML 表中,我有以下列
Course_code
Course_title
Course_unit
Score
Grade
只有前四个来自数据库中已经存在的值,最后一个(等级),每当我想请求学生的学期结果时都会生成。
while ($row8 = mysql_fetch_assoc ($query8)) {
if ($row8['score'] >= 70) {
$grade = 'A';
}
elseif ($row8['score'] >= 60) {
$grade = 'B';
}elseif ($row8['score'] >= 50) {
$grade = 'C';
}elseif ($row8['score'] >= 45) {
$grade = 'D';
}elseif($row8['score'] >= 40) {
$grade = 'E';
}else{
$grade = 'F';
}
}
查询8
$query8 = mysql_query("SELECT m. score
FROM maintable AS m
INNER JOIN students AS s ON
m.matric_no = s.matric_no
INNER JOIN courses AS c ON
m.course_code = c.course_code
WHERE m.matric_no = '".$matric_no."'
AND m.level = '".$level."'")
or die (mysql_error());
表结构
MAINTABLE:
score_id
matric_no
session
semester_name
course_code
level
score
grade
COURSES:
course_id
course_code
course_title
course_unit
STUDENT
matric_no
first_name
last_name
other_name
level
感谢您的耐心和帮助。非常感谢。
谢谢。
【问题讨论】:
-
不清楚你的问题是什么?
-
每当我从数据库请求学生分数时,我想动态地对分数进行评分。谢谢
-
还不清楚。我不明白背景,请给我们一个表格(带记录)的示例。
-
这不是您的第一个代码 sn-p 已经在做的事情(包含所有 IF 的那个)吗?
-
@truth 我有一个关于每门课程的课程和信息表。然后是一个从课程表中获取数据的主表,还包括学术会议、学期分数的列,但没有成绩列。因此,每当我查询数据库以获取学术会议(2011/2012)中所有课程的学生学期结果时,学期(雨)..应该根据学生所修课程的数量返回一些行.生成的 HTML 表包含课程名称、课程代码、课程单元、分数和等级(我想要生成)的列。谢谢
标签: php mysql loops while-loop