【发布时间】:2020-04-27 19:18:34
【问题描述】:
我为我的网站创建了一个测验,管理员可以登录并更改问题或添加问题等。
对于测验页面,我将信息记录如下:
try {
$stmt = $db->query('SELECT questionID, question, optionA, optionB, '
. ' optionC, optionD FROM quiz WHERE editedBy = "admin" ORDER BY questionID ');
while($row = $stmt->fetch()){
echo '<h3>'.$row['question'].'</h3>';
echo '<ol>';
echo '<li><input type="radio" name="q1" value = '.$row['optionA'].'/> '.$row['optionA'].'</li>';
echo '<li><input type="radio" name="q1" value = '.$row['optionB'].'/> '.$row['optionB'].'</li>';
echo '<li><input type="radio" name="q1" value = '.$row['optionC'].'/> '.$row['optionC'].'</li>';
echo '<li><input type="radio" name="q1" value = '.$row['optionD'].'/> '.$row['optionD'].'</li>';
echo '</ol>';
}
} catch(PDOException $e) {
echo $e->getMessage();
}
显然,目前每个问题的执行方式都将具有值“q1”,所以我想知道有没有办法可以更改它,以便它可能是第一个被删除的问题将具有值 q1单选按钮,第二个问题将具有值 q2 等等。无法找到任何关于如何过日子的信息,所以想知道这是否真的可能,或者我只是以错误的方式进行测验?
【问题讨论】:
-
几个选项。将问题名称存储在问题表中,然后像对值
$row['...']一样引用它。或者,您可以简单地在 while 循环中增加一个变量name="q<?php echo $counter++; ?>"。 -
感谢您的帮助!