我尝试开发一个系统,允许用户回答将从数据库中随机生成的测验。现在的问题是标记测验。我如何发布单选按钮的值,因为它有不同的名称。
这是我的一些代码。 感谢。
$selq="SELECT * FROM question WHERE q_subject_kod = '$subkod' AND q_chapter= '$chap' order by RAND() limit $bil ";
$result=mysql_query($selq);?>
<form name="quiz" action="mark.php?bil=<?php echo $bil?>&chap=<?php echo $chap?>&action=1&subject=<?php echo $subkod?>" method="post">
<?php
##Cycle through randomly selected questions
if (mysql_num_rows($result)>=0) {
$qi = 1;
$e=0?>
<table name="q" border="1" cellpadding="2" width="100%">
<tr><td></td><td></td></tr>
<?php
while ($qry = mysql_fetch_array($result)) {
$idsol=$qry['id'];
$sol=$qry['q_quest'];
$jwpn=$qry['q_ranws'];?>
<tr><td><?php echo $qi?></td> <td><?php echo $sol?></td></tr>
<tr><td></td><td>
A<input type="radio" name="ans.<? echo $e?>" id="<? echo $idsol?>"value="<?php echo $qry['q_anws'];?>" /><?php echo $qry['q_anws'];?><br />
B <input type="radio" name="ans.<? echo $e?>" id="<? echo $idsol?>" value="<?php echo $qry['q_anws1'];?>" /><?php echo $qry['q_anws1'];?><br />
C <input type="radio" name="ans.<? echo $e?>" id="<? echo $idsol?>" value="<?php echo $qry['q_anws2'];?>" /><?php echo $qry['q_anws2'];?><br />
D <input type="radio" name="ans.<? echo $e?>" id="<? echo $idsol?>" value="<?php echo $qry['q_anws3'];?>" /><?php echo $qry['q_anws3'];?><br />
<input type="text" name="val.<? echo $idsol?>" value="<? echo $idsol?>">
</td>
</tr>
<?php
$qi++;
$e++;}}}?>>
答案 0 :(得分:1)
只需使用问题,所有单选按钮无论如何都需要相同的名称,并且您不需要ID。这样就可以了。
A<input type="radio" name="ans_<? echo $idsol?>" value="<?php echo $qry['q_anws'];?>" /><?php echo $qry['q_anws'];?><br />
B <input type="radio" name="ans_<? echo $idsol?>" value="<?php echo $qry['q_anws1'];?>" /><?php echo $qry['q_anws1'];?><br />
C <input type="radio" name="ans_<? echo $idsol ?>" value="<?php echo $qry['q_anws2'];?>" /><?php echo $qry['q_anws2'];?><br />
D <input type="radio" name="ans_ <? echo $idsol?>" value="<?php echo $qry['q_anws3'];?>" /><?php echo $qry['q_anws3'];?><br />
但仅仅是为了原则问题,尝试将Answers存储在不同的表中然后问题,这样每个答案都可以拥有自己的“id”,而你不仅限于4。