什么是用于在表中存储数据的最简单的数据库解决方案,但是随机ID检索?

时间:2017-11-23 06:43:17

标签: php mysql database

我正在创建一个基于Web的测验(前端以HTML和CSS完成),其中的问题将按主题存储。 (每个主题约12个左右的问题) 我想随机选择每个主题中的问题。 每个问题都有一个图片和音频文件。 我也希望从每个主题中随机选择错误的答案。

由于会有很多主题,我希望将表名存储为可由用户选择的字符变量/别名。 例如,如果他们选择“地理”按钮,则会选择“地理”表格 将选择随机ID,并且将检索相应的图片和音频文件。 然后我可以制作一个漂亮的模块并运行其中的所有问题。

我还没有找到一个如何使用PHP和MYSQL完成此操作的示例。从我看到的示例中,SELECT命令可能需要实际的表名而不是包含名称的Character Variable。 此外,PHP检索数据的方式似乎与我看到的示例相似。这个过程似乎至少有3个步骤。

PHP / MySQL是最简单的选择,还是有更适合我的项目与其他数据库系统和语言的选项?

如果有人可以制作一段可行的PHP代码片段,我将非常感激。

1 个答案:

答案 0 :(得分:0)

PHP和SQL数据库(如MySQL,或SQLite,或其他)都可以。您只需要正确设计数据库。

所有问题都是相同类型的数据,因此不应将它们拆分为多个表。使用单个表,主题作为该表中的一列;您可以使用以下行的查询从特定主题中选择一个随机问题:

SELECT ... FROM questions WHERE topic = ? ORDER BY RAND() LIMIT 1