【发布时间】:2013-09-05 11:45:01
【问题描述】:
我从数据库中提取了一系列问题,需要为每个问题循环单选按钮。我需要将所有答案返回到一个看起来像这样的数组中
$answer_grp1 = array("T", "T", "T");
我的代码如下所示。将数组放入 $_POST['answer_grp1']
的正确 (name=??) 语法是什么<?php foreach ($questions as $question):
if ($question['q_type']==1): ?>
<tr>
<td style="width:5%;"><?= $question['q_number'] ?></td>
<td style="width:15%;">
T<input type="radio" name=answer_grp1[] value="T" />
F<input type="radio" name=answer_grp1[] value="F" />
</td>
<td><?= $question['q_text'] ?></td>
</tr>
<?php endif;
endforeach; ?>
【问题讨论】:
-
使用
answer_grp1[0], answer_grp1[1]..等。为了名字 -
用引号括起来:
name="answer_grp1[]"。提交表单时,假设您使用$_POST,您将在$_POST['answer_grp1']中获得可用的值。另外,你的标题是“收音机”,我没有看到任何收音机输入元素。 -
@ChrisRockwell 这是一个错字对不起。问题是当我尝试这种格式时,每个问题的所有单选按钮都作为一个单选按钮组。因此,例如,当您将问题 #1 回答为“T”时,一旦您回答问题 #2,它就会将答案从 #1 切换出来
-
这就是
radio输入元素的行为方式——每个问题都有一个答案。如果需要,您可以将checkbox设置为看起来像radio。 -
对,我需要为每个问题创建一个单独的单选组但将答案分配给 $answer_grp1 中的同一数组的语法
标签: php arrays radio-button