Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将在线考试系统的答案存储到数据库_Php_Mysql - Fatal编程技术网

Php 如何将在线考试系统的答案存储到数据库

Php 如何将在线考试系统的答案存储到数据库,php,mysql,Php,Mysql,我正在创建一个在线考试系统,从数据库中获取问题和答案,并在单选按钮中显示选项。但是,问题是如果我单击“保存”,它只保存一个答案,而不是所有问题的答案 $quer=" SELECT * FROM questionset ORDER BY RAND() "; $query=mysqli_query($sql,$quer); while($row = mysqli_fetch_array($query)) { $na= $row['qus']; $opa= $row['opa'];

我正在创建一个在线考试系统,从数据库中获取问题和答案,并在单选按钮中显示选项。但是,问题是如果我单击“保存”,它只保存一个答案,而不是所有问题的答案

 $quer=" SELECT * FROM questionset ORDER BY RAND() ";
 $query=mysqli_query($sql,$quer);
while($row = mysqli_fetch_array($query))
  {
  $na= $row['qus'];
  $opa= $row['opa'];
   $opb= $row['opb'];
  $opc= $row['opc'];
    $opd= $row['opd'];

 echo "<div class='pr3'>";

echo "<div id='question'>";
echo $na;
echo "</div>";
echo "<br/>";
echo "<form name='cart' method='post'>";
echo "<input type='radio' name='ans' value='" . $opa. "' onclick='answ(this.value)' >";
echo $opa;
echo "<br/>";
echo "<input type='radio' name='ans' value='" . $opb. "' onclick='answ(this.value)'>";
echo $opb;
echo "<br/>";
    echo "<input type='radio' name='ans' value='" . $opc. "' onclick='answ(this.value)'>";
echo $opc;
echo "<br/>";
echo "<input type='radio' name='ans' value='" . $opd. "' onclick='answ(this.value)'>";
echo $opd;
echo "<br/>";
echo "<input type='text' id='ansval' name='ansval' >";
    echo "</form>";

 echo " </div>";

  }
用于获取问题的php代码

 $quer=" SELECT * FROM questionset ORDER BY RAND() ";
 $query=mysqli_query($sql,$quer);
while($row = mysqli_fetch_array($query))
  {
  $na= $row['qus'];
  $opa= $row['opa'];
   $opb= $row['opb'];
  $opc= $row['opc'];
    $opd= $row['opd'];

 echo "<div class='pr3'>";

echo "<div id='question'>";
echo $na;
echo "</div>";
echo "<br/>";
echo "<form name='cart' method='post'>";
echo "<input type='radio' name='ans' value='" . $opa. "' onclick='answ(this.value)' >";
echo $opa;
echo "<br/>";
echo "<input type='radio' name='ans' value='" . $opb. "' onclick='answ(this.value)'>";
echo $opb;
echo "<br/>";
    echo "<input type='radio' name='ans' value='" . $opc. "' onclick='answ(this.value)'>";
echo $opc;
echo "<br/>";
echo "<input type='radio' name='ans' value='" . $opd. "' onclick='answ(this.value)'>";
echo $opd;
echo "<br/>";
echo "<input type='text' id='ansval' name='ansval' >";
    echo "</form>";

 echo " </div>";

  }
$query=“按兰德()从问题集顺序选择*”;
$query=mysqli\u查询($sql,$query);
while($row=mysqli\u fetch\u数组($query))
{
$na=$row['qus'];
$opa=$row['opa'];
$opb=$row['opb'];
$opc=$row['opc'];
$opd=$row['opd'];
回声“;
回声“;
echo$na;
回声“;
回声“
”; 回声“; 回声“; echo$opa; 回声“
”; 回声“; echo$opb; 回声“
”; 回声“; echo$opc; 回声“
”; 回声“; echo$opd; 回声“
”; 回声“; 回声“; 回声“; }
只更新一个文本框的Javascript

<script>
function answ(answer) {
document.getElementById("ansval").value = answer;
}
</script>

函数answ(答案){
document.getElementById(“ansval”).value=answer;
}
ID字段必须是唯一的 ++$counter; 回声“


所有问题的单选按钮名称都相同。您必须为每个答案集动态命名单选按钮。您可以使用以下代码:

$quer=" SELECT * FROM questionset ORDER BY RAND() ";
 $query=mysqli_query($sql,$quer);
while($row = mysqli_fetch_array($query))
  {
  $questionId = $row['questionId']; //primary key of question table
  $na= $row['qus'];
  $opa= $row['opa'];
   $opb= $row['opb'];
  $opc= $row['opc'];
    $opd= $row['opd'];

 echo "<div class='pr3'>";

echo "<div id='question'>";
echo $na;
echo "</div>";
echo "<br/>";
echo "<form name='cart' method='post'>";
echo "<input type='radio' name='ans<?php echo $questionId; ?>' value='" . $opa. "' onclick='answ(this.value,'<?php echo $questionId; ?>')' >";
echo $opa;
echo "<br/>";
echo "<input type='radio' name='ans<?php echo $questionId; ?>' value='" . $opb. "' onclick='answ(this.value,'<?php echo $questionId; ?>')'>";
echo $opb;
echo "<br/>";
    echo "<input type='radio' name='ans<?php echo $questionId; ?>' value='" . $opc. "' onclick='answ(this.value,'<?php echo $questionId; ?>')'>";
echo $opc;
echo "<br/>";
echo "<input type='radio' name='ans<?php echo $questionId; ?>' value='" . $opd. "' onclick='answ(this.value,'<?php echo $questionId; ?>')'>";
echo $opd;
echo "<br/>";
echo "<input type='text' id='ansval<?php echo $questionId; ?>' name='ansval<?php echo $questionId; ?>' >";
    echo "</form>";

 echo " </div>";

  } 
$query=“按兰德()从问题集顺序选择*”;
$query=mysqli\u查询($sql,$query);
while($row=mysqli\u fetch\u数组($query))
{
$questionId=$row['questionId'];//问题表的主键
$na=$row['qus'];
$opa=$row['opa'];
$opb=$row['opb'];
$opc=$row['opc'];
$opd=$row['opd'];
回声“;
回声“;
echo$na;
回声“;
回声“
”; 回声“;
echo“您没有显示任何类似于保存答案的代码。当有人单击单选按钮时,我会在文本框中显示单选按钮的值,但它只会在一个文本框中更新答案,这就是我没有尝试保存按钮的原因。请检查编辑的问题如何使用该计数器?
<script>
function answ(answer,qId) {
document.getElementById("ansval"+qId).value = answer;
}
</script>