【发布时间】:2013-09-08 22:41:41
【问题描述】:
我正在尝试制作一个测验程序,该程序将从 MySQL 数据库中获取问题及其选择,并将它们显示为用户填写的表格。用户(在填写所有字段后)将提交。这里没有评分,答案只是存储在该用户的注册 ID 的数据库中(这是因为一些答案是开放的,即:用户必须亲自输入答案,因此稍后会评估)。
我的表的结构是(我将发布创建查询,因为表看起来扭曲且难以阅读):
表 1:其中包含 q_id(每个问题都有唯一的 ID)、question(实际问题)、quiz_id(此问题所属的测验的 ID;有多个测验!),active(一个简单的“y”或“n”字段,用于检查此问题是否处于活动状态。如果不是,则问题未添加到表单中)和 type('c' 用于单选,'m' 用于多选,'o' 用于打开/用户文本输入)
CREATE TABLE `db_test`.`insr_questions` (
`q_id` INT(10) NOT NULL AUTO_INCREMENT ,
`question` VARCHAR(255) NOT NULL ,
`quiz_id` MEDIUMINT(8) UNSIGNED NOT NULL ,
`active` CHAR(1) NOT NULL ,
`type` CHAR(1) NOT NULL ,
PRIMARY KEY (`id`) );
表 2:这包含字段 a_id(这是答案选择的唯一 ID)、choice(这是实际答案选择)、 question_id(这些答案选择属于哪个问题ID)和active(同上)
CREATE TABLE `db_test`.`insr_answers` (
`a_id` INT(10) NOT NULL AUTO_INCREMENT ,
`choice` VARCHAR(75) NOT NULL ,
`question_id` MEDIUMINT(8) UNSIGNED NOT NULL ,
`active` CHAR(1) NOT NULL ,
PRIMARY KEY (`id`) );
所以这里的想法是检索一个quiz_id,然后深入问题表并检索属于该quiz_id的所有问题,然后取每个问题,并检索所有属于该问题的答案到那个question_id。然后这些必须以 php 形式显示。
非常感谢任何正确方向的指针!
(我目前正在阅读可以完成此操作的不同方式,作为 php 的新手,所以我将添加我正在处理的任何其他代码,这个问题!)
【问题讨论】:
标签: php mysql forms dynamic-programming