我正在尝试访问ques数组变量以存储到db。
$n=0;
while($row= mysql_fetch_row($rs)){?>
<form name="myfm" id="myfm" method="post" action="Quiz.php">
<table width=100%> <tr> <td width=30><td></td></td></tr> <table border=0>
<?php $n=$n+1; ?>
<tr><td>Question <?php echo $n." "; echo $row[2]; ?></td></tr>
<tr><td class=style8><input type="radio" name="ques['<?php echo $n; ?>'][]" value=1><?php echo $row[3]; ?></td></tr>
<tr><td class=style8> <input type="radio" name="ques['<?php echo $n; ?>'][]" value=2><?php echo $row[4];?></td></tr>
<tr><td class=style8><input type="radio" name="ques['<?php echo $n; ?>'][]" value=3><?php echo $row[5];?></td></tr>
<tr><td class=style8><input type="radio" name="ques['<?php echo $n; ?>'][]" value=4><?php echo $row[6];?></td></tr>
<?php
}
echo "<tr><td><input type=submit name=submit id='result' value='Get Result'></form>";
?>
</table></table>
</form>
我试过这段代码
$n=0;
while($row= mysql_fetch_row($rs)){
for($i=0;$i<count($_POST['ques']);$i++)
{$n=$n+1;
$questions = $_POST["ques"];
foreach ($questions as $q) {
print_r($_POST['ques']);
}
mysql_query("insert into useranswer(sessid, testid, ques, ans1,ans2,ans3,ans4,correctans,yourans) values ('".session_id()."', $tid,'$row[2]','$row[3]','$row[4]','$row[5]', '$row[6]','$row[7]','$ans')") or die(mysql_error());
}
输出:
Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) ) Array ( ['1'] => Array ( [0] => 2 ) ['2'] => Array ( [0] => 2 ) ['3'] => Array ( [0] => 2 ) )
但是没有工作。如果您知道正确的代码,请帮助我....如果您想要更多代码,请访问此链接“https://stackoverflow.com/questions/35217287/how-to-convert-this-php-page-into-a-page-that-shows-all-questions-please-read-de”
答案 0 :(得分:2)
在PHP中,变量插值仅在双引号内起作用
迭代ques
数组值:
if (isset($_POST["ques"])) {
$questions = $_POST["ques"];
$ans = [];
$i = 0;
foreach ($questions as $q) {
$ans[] = $q[$i];
$i++;
}
...
// to insert values into respective table fields use:
$values = implode(",", $ans);
// then place $values into the needed position in query:
// "... values ('... , ...., ". $values . ", ....)"
}
答案 1 :(得分:1)
像这样。
$questions = $_POST["ques"];
foreach ($questions as $key=>$value) {
echo $value;
}