为了账号安全,请及时绑定邮箱和手机立即绑定

如何在我的数据库中插入单选按钮的值,我应该使用什么表格布局?

如何在我的数据库中插入单选按钮的值,我应该使用什么表格布局?

PHP
眼眸繁星 2022-01-08 20:11:50
我有一个问题列表,我可以发布答案,但现在我不知道如何将它们放入数据库中。我也不知道我应该使用什么样的表格布局。我尝试了一些东西,但它们会起作用,因为你有多个答案,所以它不能一次全部插入。我在我的表中使用了一个“答案”列,因为我无法制作 1000 个“答案”列,因为不是每个问题列表都有与另一个问题一样多的问题。<form action="Antwoord.php" method="POST">    <input type="text" name="Naam" placeholder="Uw naam:"><?php   $sql = "SELECT * FROM  questionlist_choice WHERE Qid='1'";   $result = mysqli_query($conn, $sql);  if ($result->num_rows > 0) {    $i = 0;  while ($row = mysqli_fetch_assoc($result)) {$vraag = $row['Vraag'];$vraagA = $row['Vraag_keuzeA'];$vraagB = $row['Vraag_keuzeB'];$vraagC = $row['Vraag_keuzeC'];$vraagD = $row['Vraag_keuzeD'];$vraagE = $row['Vraag_keuzeE'];$vraagF = $row['Vraag_keuzeF'];echo "<div>";    echo "<br><p>$vraag</p>";    echo "<input type='radio' name='q[$i]' value='$vraagA'> $vraagA<br>";    echo "<input type='radio' name='q[$i]' value='$vraagB'> $vraagB<br>";    echo "<input type='radio' name='q[$i]' value='$vraagC'> $vraagC<br>";    echo "<input type='radio' name='q[$i]' value='$vraagD'> $vraagD<br>";    echo "<input type='radio' name='q[$i]' value='$vraagE'> $vraagE<br>";    echo "<input type='radio' name='q[$i]' value='$vraagF'> $vraagF<br>";echo "</div>";$i++;?><input type="submit"></form>
查看完整描述

2 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

我将创建 3 个不同的表:


用户、问题和答案


结构:


 users:

     - id 

     - name

     - other data you store ...

 surveys:

     - id

     - name or whatever data you store about survey

 questions

     - id

     - survey_id

     - text (actual question)

     - ...

 answers

     - id

     - user_id

     - question_id

     - answer

如果您想在一列中插入所有答案(我不推荐),您可以序列化答案


您还必须使用不同的数据库结构


answers:

    - id

    - user_id

    - survey_id

    - answers

将您的 $i 更改为 1,以便您的问题 ID 以 1 开头;


  $i = 1;

  while ($row = mysqli_fetch_assoc($result)) {

       // also change the name to just $i

       echo "<input type='radio' name='.$i.' value='$vraagA'> $vraagA<br>";

发布到数据库:


// put all checkbox values in a single array

$answers = [];

for($i = 1; $i<= $numberOfAnswers; $i++) {

    $answers[$i] = $_POST[$i];

}

$answers = serialize($answers);


// do the insert query


查看完整回答
反对 回复 2022-01-08
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

在Antwoord.php你需要这样的逻辑。


 <?php

    if (isset($_POST['q1'])){

        $q1 = $_POST['q1'];

        mysql_query("INSERT INTO vraag (q1) VALUES ('$q1')");

    }

  ?>


查看完整回答
反对 回复 2022-01-08
  • 2 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号