我的for-loop出了问题:
当我回答问题$question[0]
时,它回显$question[1]
并回显$question[0]
。
问题在于,当我回答$question[1]
时,它回显$question[0]
而不是$question[2]
,并在$question[0]
和$question[1]
之间的循环中继续
也许数组出了问题..?
<?php
$question = array(
0 => "<form action=\"\" method=\"get\"> Q1<br>
<input type=\"radio\" name=\"q0\" value=\"tr\"> A <br>
<input type=\"radio\" name=\"q0\" value=\"ok\"> B <br>
<input type=\"radio\" name=\"q0\" value=\"fa\"> C
<input type=\"submit\" value=\"대답하기 Answer\">
</form>",
/* 1~4 is same thing with different name (ex. q1, q2..) */
$a = array( @$_GET['q0'], @$_GET['q1'], @$_GET['q2'], @$_GET['q3'], @$_GET['q4']);
$point = array(0,0,0,0,0);
for ($i = 0; $i < 5; $i++) {
ob_start();
echo $question[$i];
if (isset($a[$i]) == true) {
if ($a[$i] == "tr") {
$point[$i] = 20;
ob_end_clean();
}
elseif ($a[$i] == "ok") {
$point[$i] = 10;
ob_end_clean();
}
else {
$point[$i] = 0;
ob_end_clean();
}
} else {
break;
}
}
?>
答案 0 :(得分:0)
您的数组$ question在0
索引处只有一个元素。尝试使用表单名称并使用表单名称从$_Get
获取参数。在转储结果后,您应该得到您所需要的。
e.g。用POST
<form action="" method="POST" name="myForm">
<input type="radio" name="myform[gender]" value="true"> A<br>
<input type="radio" name="myform[gender]" value="false"> B<br>
<input type="radio" name="myform[gender]" value="other"> C
<input type="submit">
</form>
并在PHP中:
$_POST["myForm"]
应该是已发布的表单。
if (isset($_POST['myform'])) {
$values = $_POST['myform'];
}