如何在每次刷新页面时生成新的测验


How do I generate a new quiz every time the page is refreshed?

我正在制作一个网站,它将有一个测试,这将是一些多项选择题,我想知道是否有一种方法可以让我列出几个问题,每次有人点击"参加测试",它都会生成一个新的测试,其中包含所有问题?我还想确保我不会不止一次使用同一个问题?我该怎么做?请记住,我不是一个高级的网络开发人员,如果你愿意的话,请保持答案清晰简洁。无论如何,我计划做的和过去几周一直在做的是使用PHP rand函数,只做一组小测验,每当刷新页面时,它都会选择一个介于(1,15)之间的数字,我会为每个Id为1,2,3的数字创建一个小测验,等等,但这是一项艰巨的工作,我觉得有一种更好、更容易的方法可以做到这一点。

请告诉我是否有更简单的方法(只使用PHP也很好)。非常感谢。

假设你有一个问题表,你想做的是从表中选择所有的id,并将它们存储在一个名为$AllQuestionIds的变量中,所以这个变量应该是这样的,

$AllQuestionIds = [
    [0] => ['id' => 1],
    [1] => ['id' => 2],
    [2] => ['id' => 3]
]

然后,当你在$AllQuestionId上运行shuffle时,你的数组应该是这样的,

$AllQuestionIds = [
    [0] => ['id' => 2],
    [1] => ['id' => 3],
    [2] => ['id' => 1]
]

之后,对于测试的剩余部分,您将希望将此数组存储在会话中,然后当用户单击下一个问题时,从数组中提取下一个id,检索问题并显示它。