【发布时间】:2014-06-24 17:16:36
【问题描述】:
我正在创建一个动态测验页面,其中每个问题有两个选项和一个单选按钮,用于将其值与数据库中的值进行比较,以了解答案是否正确
问题和选择存储在数据库中,并在代码中检索,每个问题都在自己的表中
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<form method="post" class="RegularFont" action="quiz.php">
<?php
require_once 'database.php';
$res = mysql_query("select * from quiz");
while ($row1 = mysql_fetch_array($res)) {\\create a table for every entry
echo <<<_END
<div style="padding-bottom: 30px">
<table border="">
<th colspan="2">question 1</th>
<tr>
<td colspan="2"> $row1[0] </td>
</tr>
<tr>
<td>$row1[1]<input type="radio" name='true1[$row1[1]]' value='1'></td>
<td>$row1[2]<input type="radio" name='true1[$row1[1]]' value='2'></td>
</tr>
</table>
</div>
_END;
}
?>
<input type="submit" value="submit">
</form>
</body>
所以每个单选按钮的值可以是 1 或 2 ,我想将它与数据库中的值进行比较,其中我的正确答案是数字 1 或 2
我尝试使用
foreach ($_POST['true1'] as $value)
但不能正确,我希望它可以动态地用于任意数量的输入
【问题讨论】:
-
我认为您的
foreach应该可以工作。请提供有关失败原因的更多详细信息。 -
当我使用
foreach时,$value是每个收音机的值,所以我很适合这里,但是我将如何将此值与对应的值进行比较(在数据库),如果它相等,我想增加一个变量 x 例如。 -
我下面的回答没有解决这个问题?
-
好吧,我可以将
$key与$value进行比较,假设关联数组包含正确答案 '1' 或 '2' 的值,但如果你能想象出正确答案的列,它会是 '1'/'2'/'1'/'1' 这样会破坏单选按钮不会对每个问题都是唯一的,我希望你能理解我 -
您不能将
$key与$value进行比较。您将它与数据库中的列进行比较,因为它是您创建name=true1[$row1[1]]'时的来源。