0

次のフィールドと例を含むデータベーステーブルがあります。

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");
        }

どんなヒントでも素晴らしいでしょう

4

1 に答える 1