单行数据库的随机输出

时间:2016-02-26 08:08:09

标签: php mysql

我有一个基于网络的考试申请,其中有5个选择答案和正确的答案。选择答案是使用无线电,但我想让选择答案输出是随机的。只有表格:

tb_question:
    id_question: int(8) AUTO_INCREMENT PRIMARY_KEY
    question: varchar(1000)
    option_a: varchar(512)
    option_b: varchar(512)
    option_c: varchar(512)
    option_d: varchar(512)
    option_e: varchar(512)
    answer: enum('A', 'B', 'C', 'D', 'E')

这是我的HTML代码:

<ol>
    <?php foreach($select_question as $row): ?>
        <li>
            <?php echo $row->question; ?><br />
            <input type="radio" name="<?php echo $row->id_question; ?>" value="A"> <?php echo $row->option_a; ?> <br />
            <input type="radio" name="<?php echo $row->id_question; ?>" value="B"> <?php echo $row->option_b; ?> <br />
            <input type="radio" name="<?php echo $row->id_question; ?>" value="C"> <?php echo $row->option_c; ?> <br />
            <input type="radio" name="<?php echo $row->id_question; ?>" value="D"> <?php echo $row->option_d; ?> <br />
            <input type="radio" name="<?php echo $row->id_question; ?>" value="E"> <?php echo $row->option_e; ?> <br />
        </li>
    <?php endforeach; ?>
</ol>

我希望收音机选项会显示混合,而不是像上面那样排序。有人能帮我吗?谢谢!

1 个答案:

答案 0 :(得分:1)

你可以在数组中获得所有答案,然后你可以使用PHP的shuffle()函数来填充它们: 喜欢:$answersShuffled=shuffle($answers);

现在你可以遍历$ answersShuffled数组。

但我建议将数据库规范化并在分区表中保留答案。可能存在可以增加选项数量的情况