参看以下准则:
$query = "
SELECT * FROM Question q
INNER JOIN StudentAnswer sa ON q.QuestionId = sa.QuestionId
JOIN Answer a ON sa.QuestionId = a.QuestionId
WHERE
( ".mysql_real_escape_string($sessionid)." = OR q.SessionId = ".mysql_real_escape_string($sessionid)." )
AND
( ".mysql_real_escape_string($questionno)." = OR q.QuestionNo = ".mysql_real_escape_string($questionno)." )
AND
( ".mysql_real_escape_string($studentid)." = OR sa.StudentId = ".mysql_real_escape_string($studentid)." )
AND(CorrectAnswer = 1 )
ORDER BY $orderfield ASC";
while ($row = mysql_fetch_array($result)) {
echo "
<tr>
<td>{$row[ SessionId ]}</td>
<td>{$row[ QuestionNo ]}</td>
<td>{$row[ QuestionContent ]}</td>
<td>{$row[ AnswerContent ]}</td>
<td>{$row[ StudentAnswer ]}</td>
<td>{$row[ Weight% ]}</td>
<td></td>
<td>{$row[ StudentId ]}</td>
</tr>";
}
?>
每一行都是我数据库表的一个领域。 我感兴趣的是:
<td>{$row[ AnswerContent ]}</td>
<td>{$row[ StudentAnswer ]}</td>
我在问询中援引的WHERE条款,只是正确回答的词。 但是,在数据库表中的真相中,回答者领域包含一行,每个回答者都有一字答案。
学生回答是学生们选择的哪怕回答。 我想的是,对于学生Answer row,我不希望它拿出10、5、2等数字,而是想用 words、蓝、纯等词来显示学生的回答。 因此,我想知道的是,我是如何把回答Content和学生Answer合并在一起的,这样,无论学生Answer是怎样的,它都是从学生Answer的田中以言语表示的,而不是以id语表示。
感谢