将单选按钮数组发布到php数组变量

时间:2015-04-30 09:33:14

标签: php html arrays post

问题是我无法将HTML数组的输入发布到php数组变量。

X单选按钮组说回答[1],回答[2] ....回答[x]。 答案[1]有四个值A,B,C,D选择单选按钮值存储在答案[1]中,同样适用于所有答案[2],....答案[x]。所以基本上我想将每个选定的选项存储在数组中,即在数组位置1处正确回答1,依此类推...... 我试图获得客观问题的答案,并在提交时将其保存到数组变量,然后在单列中插入数据库。

当用户输入问题数(例如10)时,他会得到每个问题的A,B,C,D单选按钮,即A,B,C,D的10倍,并且可以选择正确答案并提交。 然后将所有答案保存在数组中并插入表中。

Html输出显示为......

<tr>
  <td>1&nbsp &nbsp &nbsp <input type="radio" name="answer[1]" value="A"> &nbsp A &nbsp <input type="radio" name="answer[1]" value="B"> &nbsp B &nbsp<input type="radio" name="answer[1]" value="C"> &nbsp C &nbsp <input type="radio" name="answer[1]" value="D">&nbsp D 
  </td>
</tr>
<tr>
   <td>2&nbsp &nbsp &nbsp <input type="radio" name="answer[2]" value="A"> &nbsp A &nbsp <input type="radio" name="answer[2]" value="B"> &nbsp B &nbsp<input type="radio" name="answer[2]" value="C"> &nbsp C &nbsp <input type="radio" name="answer[2]" value="D">&nbsp D
    </td>
 </tr>
 <tr>
    <td>3&nbsp &nbsp &nbsp <input type="radio" name="answer[3]" value="A"> &nbsp A &nbsp <input type="radio" name="answer[3]" value="B"> &nbsp B &nbsp<input type="radio" name="answer[3]" value="C"> &nbsp C &nbsp <input type="radio" name="answer[3]" value="D">&nbsp D
    </td>
  </tr>
<tr>
   <td>4&nbsp &nbsp &nbsp <input type="radio" name="answer[4]" value="A"> &nbsp A &nbsp <input type="radio" name="answer[4]" value="B"> &nbsp B &nbsp<input type="radio" name="answer[4]" value="C"> &nbsp C &nbsp <input type="radio" name="answer[4]" value="D">&nbsp D
   </td>
 </tr>
 <tr>
   <td>5&nbsp &nbsp &nbsp <input type="radio" name="answer[5]" value="A"> &nbsp A &nbsp <input type="radio" name="answer[5]" value="B"> &nbsp B &nbsp<input type="radio" name="answer[5]" value="C"> &nbsp C &nbsp <input type="radio" name="answer[5]" value="D">&nbsp D
   </td>
       </tr> 

回声中的Php varibale显示Null .. $ tq是问题总数......

if(isset($_REQUEST['Submit']))
{ $x=1;
while($tq>=$x) { 
echo "hiii";
$answer_id[] = $_POST['answer[]'] ;$x++;
var_dump( $answer_id[$x]);
}} 
<form action="" method="post" enctype="multipart/form-data" name="form1" onsubmit="javascript:return valpass(this);">
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr >
<td class="page-top-outer"  ><?php include("header_content.php"); ?></td>
</tr>  
<tr>
<td height="500" class="top-inp"><?php include("menu.php"); ?></td>
</tr>
<?php $x=0;
while($tq>0) { $tq--; $x++; 
echo '<tr><td>'.$x.'&nbsp&nbsp&nbsp<input type="radio" name="answer['.$x.']" value="A">&nbsp A &nbsp<input type="radio" name="answer['.$x.']" value="B">&nbsp B &nbsp<input type="radio" name="answer['.$x.']" value="C">&nbsp C&nbsp<input type="radio" name="answer['.$x.']" value="D">&nbsp D</td></tr>';

}
?>
<input name="Submit" type="Submit" value="Submit">
</table>

如果$ tq = 5,则输出为空5次。

2 个答案:

答案 0 :(得分:2)

$_POST就像 -

array(
    answer => array(
               1 => value1,
               2 => value2,
               .......
              )
)

尝试 -

$answers = $_POST['answer'];
foreach ($answers as $answer) {
    var_dump($answer);
}

答案 1 :(得分:0)

您可以像这样更新代码并尝试:

<强> HTML

<tr>
  <td>1&nbsp &nbsp &nbsp <input type="radio" name="answer1[]" value="A"> &nbsp A &nbsp
      <input type="radio" name="answer1[]" value="B"> &nbsp B &nbsp
      <input type="radio" name="answer1[]" value="C"> &nbsp C &nbsp 
      <input type="radio" name="answer1[]" value="D">&nbsp D 
  </td>
</tr>
<tr>
   <td>2&nbsp &nbsp &nbsp <input type="radio" name="answer2[]" value="A"> &nbsp A &nbsp 
       <input type="radio" name="answer2[]" value="B"> &nbsp B &nbsp
       <input type="radio" name="answer2[]" value="C"> &nbsp C &nbsp 
       <input type="radio" name="answer2[]" value="D">&nbsp D
    </td>
 </tr>
 <tr>
    <td>3&nbsp &nbsp &nbsp <input type="radio" name="answer3[]" value="A"> &nbsp A &nbsp 
        <input type="radio" name="answer3[]" value="B"> &nbsp B &nbsp
        <input type="radio" name="answer3[]" value="C"> &nbsp C &nbsp 
        <input type="radio" name="answer3[]" value="D">&nbsp D
    </td>
  </tr>
<tr>
   <td>4&nbsp &nbsp &nbsp <input type="radio" name="answer4[]" value="A"> &nbsp A &nbsp 
       <input type="radio" name="answer4[]" value="B"> &nbsp B &nbsp
       <input type="radio" name="answer4[]" value="C"> &nbsp C &nbsp 
       <input type="radio" name="answer4[]" value="D">&nbsp D
   </td>
 </tr>
 <tr>
   <td>5&nbsp &nbsp &nbsp <input type="radio" name="answer5[]" value="A"> &nbsp A &nbsp 
       <input type="radio" name="answer5[]" value="B"> &nbsp B &nbsp
       <input type="radio" name="answer5[]" value="C"> &nbsp C &nbsp 
       <input type="radio" name="answer5[]" value="D">&nbsp D
   </td>
       </tr>

<强> PHP

$answer1 = $_POST['answer1'];
$answer2 = $_POST['answer2'];
$answer3 = $_POST['answer3'];
$answer4 = $_POST['answer4'];
$answer5 = $_POST['answer5'];