次のフィールドと例を含むデータベーステーブルがあります。
QuestionID
Question
AnswerA
AnswerB
AnswerC
AnswerD
CorrectAnswer
例:
QuestionID: 1
Question: What is 2 + 2?
AnswerA: 1
AnswerB: 2
AnswerC: 3
AnswerD: 4
CorrectAnswer: 4
データベースに 20 の質問がある場合、質問がランダムな順序で表示されるだけでなく、回答が別のラジオ ボタンに表示されるようにするにはどうすればよいでしょうか (ユーザーが正解の場所を記憶できないようにするため)。これは Facebook アプリに統合されます。以下は私のSQLクエリです:
$sql="SELECT DISTINCT Question, QuestionID, AnswerA, AnswerB, AnswerC, AnswerD FROM miniproj ORDER BY rand() LIMIT 1";
これはwhile
私が使用しているステートメントです(mysql_fetch_array
非推奨であることは理解していますが、別の機会にソートできます):
while ($myrow = mysql_fetch_array($result))
{
$answers = array($myrow['AnswerA'], $myrow['AnswerB'], $myrow['AnswerC'], $myrow['AnswerD']);
shuffle($answers);
echo("<form action='question.php' method='POST'>\n");
echo("<h1>");
echo("Q: ");
echo($myrow['Question']);
echo("</h1>");
echo("<input type='radio' name='comments' value='A'>\n");
echo($myrow['AnswerA']);
echo("<p>");
echo("<input type='radio' name='comments' value='B'>\n");
echo($myrow['AnswerB']);
echo("<p>");
echo("<input type='radio' name='comments' value='C'>\n");
echo($myrow['AnswerC']);
echo("<p>");
echo("<input type='radio' name='comments' value='D'>\n");
echo($myrow['AnswerD']);
echo("<p>");
echo("<br />");
echo("<input type='submit' value='Submit'>\n");
echo("</form>\n");
}
どんなヒントでも素晴らしいでしょう