Php 我应该编写什么代码来按顺序显示问题和多项选择答案?

Php 我应该编写什么代码来按顺序显示问题和多项选择答案?,php,mysql,Php,Mysql,我在MySQL数据库中创建了一个问题库表。我想在浏览器中显示这些问题及其多选答案。在用户选择当前问题的答案后,必须显示以下问题。我想将用户输入的值存储在POST变量中,如$\u POST['store']。它必须捕获用户每次输入的值和增量。最后必须显示结果,对于每个正确答案,必须分配一分 数据库表字段为Sno,问题,选项1,选项2,选项3 在另一个表中,Q_no,userentered,corect answer 我写什么PHP代码和MySQL查询?如何创建另一个动态表,以便将用户输入的答案与正

我在MySQL数据库中创建了一个问题库表。我想在浏览器中显示这些问题及其多选答案。在用户选择当前问题的答案后,必须显示以下问题。我想将用户输入的值存储在POST变量中,如
$\u POST['store']
。它必须捕获用户每次输入的值和增量。最后必须显示结果,对于每个正确答案,必须分配一分

数据库表字段为
Sno
问题
选项1
选项2
选项3
在另一个表中,
Q_no
userentered
corect answer


我写什么PHP代码和MySQL查询?如何创建另一个动态表,以便将用户输入的答案与正确答案进行比较?

无需错误处理、输入验证或清理的基本PHP步骤(请参阅PHP手册):


@Priya尝试编写代码如果出现任何错误,我们可以提供帮助。删除我的否决票并添加另一张投票。前面只有一行SQL查询。:)是的,我完全同意这是一个糟糕的结果。(试图在准备完整答案的同时快速抓住要点)。谢谢你的投票。
<?php
/* connect to server */
try{
  $dbh=new PDO("mysql:host={$myserver}", $myuser, $mypassword);
} catch (PDOException $ex){
    die("cannot connect to database service"); 
    error_log($ex->getMessage());
}

/* create database */
$dbh->exec("CREATE DATABASE IF NOT EXISTS {$mydb}"); 

/* select database */
$dbh->exec("USE {$mydb}"); 

/* create tables */
$sql="CREATE TABLE IF NOT EXISTS questions (
  Sno INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
  Question TEXT, 
  option1 VARCHAR(64), 
  option2 VARCHAR(64), 
  option3 VARCHAR(64)
)";
$dbh->exec($sql);
$sql="CREATE TABLE IF NOT EXISTS answers (
  A_no INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 
  Q_no INT, 
  user VARCHAR(64), 
  answer TEXT,
  INDEX Q_ind (Q_no), 
  FOREIGN KEY (Q_no) 
    REFERENCES questions (Sno)
    ON DELETE CASCADE
)";
$dbh->exec($sql);

/* add new question from HTML form (method POST) */
$stmt=$dbh->prepare("INSERT INTO questions (
  Question, option1, option2, option3
) 
VALUES (
  ':question', 
  ':option1', 
  ':option2', 
  ':option3'
)");
$question = process_question_input($_POST['question']);
$option1 = process_option_input($_POST['option1']);
$option2 = process_option_input($_POST['option2']);
$option3 = process_option_input($_POST['option3']);
$stmt->bindParam(':question',$question);
$stmt->bindParam(':option1',$option1);
$stmt->bindParam(':option2',$option2);
$stmt->bindParam(':option3',$option3);
$stmt->execute();

/* add new answer from HTML form (method POST) */
$stmt=$dbh->prepare("INSERT INTO answers (Q_no,user,answer) 
VALUES (
  ':question_number', 
  ':user', 
  ':answer'
)");
$question_number = process_question_number($_POST['question_number']);
$user = process_user($_POST['user']);
$answer = process_answer($_POST['answer']);
$stmt->bindParam(':question_number',$question_number);
$stmt->bindParam(':user',$user);
$stmt->bindParam(':answer',$answer);
$stmt->execute();

/* return a table with every question and associated answers */
$sql="SELECT * FROM  questions LEFT JOIN answers ON Sno=Q_no"; 
$stmt = $dbh->query($sql);

/* return records for a particular question and its answers, if any */
$stmt=$dbh->prepare("SELECT * FROM  questions LEFT JOIN answers ON Sno=Q_no WHERE question=:question");
$question=process_question_input($_POST['question']); 
$stmt->bindParam(':question',$question);
$stmt->execute();
$dbh = null;
?>
<html><head><title>My question</title></head>
  <body>
    <form method="post">
      Option 1: <input type="text" name="option1" /><br /> 
      Option 2: <input type="text" name="option2" /><br /> 
      Option 3: <input type="text" name="option3" /><br /> 
      Input your question:<br />
      <textarea name="question"></textarea>
      <input type="submit" value="Send" />
    </form>
  </body>
</html>
<html><head><title>My answer</title></head>
  <body>
    <?php echo $question; ?>
    <form method="post">
      <input type "hidden" value="<?php echo $question_number; ?>" />
      User:<input type="text" name="user" /><br /> 
      Input your question:<br />
      <textarea name="answer"></textarea>
      <input type="submit" value="Send" />
    </form>
  </body>
</html>