繁体   English   中英

在SQL中获取具有早期值的现有表单

[英]Get existing form with earlier values in sql

我从数据库中的问题表中获取问题。
我要保存具有唯一的form_id和user_id的question_id和answer_value来回答数据库中的表。

我希望用户能够在第二天更新表格。 那么,如何根据用户先前的答案获取并显示已经填写了answer_value的表单?

这就是我显示数据库问题的方式:

<form action="/form/insert.php" method="POST">
$query = "SELECT * FROM questions where active=1 AND question_sort=1 ORDER BY sort_by";
$result = @mysqli_query($con, $query);
if ($result) {
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    $body = $row['question_body'];
    $question_id = $row['question_id'];
      echo '<tr>
       <td class="question">'.$body.'</td>
       <td class="answer"><input type="radio" name="answer_value['.$question_id.']" value="0" ></td>
       <td class="answer"><input type="radio" name="answer_value['.$question_id.']" value="1" ></td>
       <td class="answer"><input type="radio" name="answer_value['.$question_id.']" value="2" ></td>
          </tr>';
}
</form>

这是我将每个unicqe表单保存到db的方式:

 $question_id = mysqli_real_escape_string($con, $_POST['question_id']);
 $user_id = mysqli_real_escape_string($con, $_POST['user']);
 $form_id = mysqli_real_escape_string($con, $_POST['form_id']);
 $form_date = gmdate('Y-m-d H:i:s');

 foreach ($_POST['answer_value'] as $question_id => $answer_id){

$sql="INSERT INTO answers (question_id, answer_value, user_id, form_id,   form_date)
VALUES ({$question_id}, {$answer_id}, $user_id, {$form_id}, '$form_date')";

您必须遍历这些值并与您存储的答案值匹配

<form action="/form/insert.php" method="POST">
<?php
$vals=array(0,1,2);
$query = "SELECT * FROM questions where active=1 AND question_sort=1 ORDER BY sort_by";
$result = @mysqli_query($con, $query);
if ($result) {
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
$body = $row['question_body'];
$question_id = $row['question_id'];
  echo '<tr>
   <td class="question">'.$body.'</td>';
   foreach($vals as $x){
    $s='';
    if($x==$row['answer_value']){
        $s="selected";
    }
    echo '<td class="answer"><input type="radio" name="answer_value['.$question_id.']"     value="'.$x.'" '.$s.'></td>';
   }
echo '</tr>';
}
}
?>
</form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM