将Mysql信息从一个页面传输到另一个页面


Transfer Mysql info from a page to another page

我正在为我的一个网站做一个小概念。所有的问题数据都存储在mysql数据库中。我使用下面的代码让用户提交随机的琐事答案。

<html> 
 <title>Trivia</title>
 <body>
 <h1>Trivia</h1>


<?php 
 mysql_connect("localhost", "trivia", "<snip>") or die(mysql_error()); 
 mysql_select_db("trivia") or die(mysql_error()); 

 $query = 'SELECT * FROM questions ORDER BY RAND() LIMIT 1';
 $data = mysql_query("SELECT * FROM questions ORDER BY RAND() LIMIT 1") 
 or die(mysql_error()); 

 $info = mysql_fetch_array( $data ); 

 Print "<b>question:</b> ".$info['question'] . " ";

 ?>
 <form action="result.php" method="post">
 <input type="hidden" name="checkbox" value=<?php
  $info ['correctoption'] ?>>
  <?php
  Print $info ['option1'] ?>  <input type="radio" name="answers" value=<?php
  $info ['option1'] ?>  /><br />
  <?php
  Print $info ['option2'] ?> <input type="radio" name="answers" value=<?php
  $info ['option2'] ?>   /><br />
  <?php
  Print $info ['option3'] ?> <input type="radio" name="answers" value=<?php
  $info ['option3']  ?>   /><br />
  <?php
  Print $info ['option4']  ?> <input type="radio" name="answers" value=<?php $info ['option4'] ?>   /><br />
  <input type="submit" value="submit" />
</form>
 </body>
 </html>

然而,由于这个问题是随机的,我不知道如何在下一页检查它

 <?php 
 mysql_connect("localhost", "trivia", "<snip>") or die(mysql_error()); 
 mysql_select_db("trivia") or die(mysql_error()); 


 $query = 'SELECT * FROM questions ORDER BY RAND() LIMIT 1';
 $data = mysql_query("SELECT * FROM `questions` WHERE 1") 
 or die(mysql_error()); 

 // puts the "friends" info into the $info array 
 $info = mysql_fetch_array( $data ); 
 $correctoption =  $_POST ['checkbox'];

$answer = $_POST['ans'];
    if ($answer == 
  $correctoption) {
        echo 'You are Correct';

    }
    else {
        echo 'You are Incorrect';
    }    
?> 

我一直在寻找这个问题的答案,但没有得到任何东西

在隐藏的输入字段中保留问题id:

<input type="hidden" name="questionNumber" id="questionNumber" value="12345" />

示例:http://www.tizag.com/htmlT/htmlhidden.php
这样,你就知道用户的反应&用户在提交时回答的问题

希望这将帮助。

希望您的问题在数据库中有id。使用问题id作为表单中的隐藏输入字段。在第二页,你只需要选择问题id为:

的问题
$query = 'SELECT * FROM questions WHERE id=' .mysql_real_escape_string($_POST['id']). ' LIMIT 1';

另外,你不应该在html中发布正确的答案,这对用户来说很容易弄清楚!