[已解决问题] 怎么调查问卷式网站的设计
提问时间: 2008-07-07 17:04
悬赏分:50 浏览:313 次

以前也没做过这类项目,发现比投票系统要复杂一些,因为投票系统的答案不是让你自己添加的,你只要先择答案就行了.而调查问卷张卷的题可能不一样.就一第卷子来说也有选择的,填空的好像试卷一样啊.现在想得是设计三个表一个用户表,一个问题表,一个答案表,再用一个表将他们关联,我还没有遇到过三个表连在一块的,这个有点难度大.最简单一点的想法是把每个题设置成一个表的字段,下面直接存答案,一个表包含了所有的信息,这个简单啊.

请问大家有没有这方面的经验,你们是怎么处理的.小弟我刚毕业入职,明天没有答案就能采用第二个笨办法先完成这三天的任务再说. 

 

 

提问者:Jerry Qian - 初学一级
最佳答案
楼主你看不懂网友玉开给你的Sql Server的关系图吗?那么我将我的想法详细说给你听听。 调查问卷与考试系统是比较相似的(考试系统楼主没有开发过吗?),其实就问卷调查本身来说分两种:一是有固定正确答案的问卷调查,二是搜集答案的问卷调查。我在这里先只说第一种情况,正如网友玉开所分析的一般为单选、多选、文本框输入这几类题目。 关于需求中需要注意的地方: 1、单选题和多选题就不用说了,正确答案一般只能是一个; 2、文本框输入题的判断就稍微复杂些:第一一般文字输入不要过长(不能像写作文一样,那样很难判断正确性),第二你不能保证用户输入的内容和你的正确答案一字不差(除非有这方面要求的题目出现),因此用户答案中只要包含有某些必须出现的关键字就可以了; 3、需求中是否能让管理者自己对问卷调查的题目进行控制,即管理者是否能出题?这是必须要明确的需求。(一般来说管理者能控制所出题目是有可能的;或者题目是用户在刷页时随机从题库里出的,这也是有可能的;或者是牵引式出题,即前一题选择不同答案后一题为不同题目。这里我们探讨比较简单的一种管理者管理题库出题的方式。) 关于此类设计: 一、数据库后台设计: 1、表:用户表、题目表(可包含题目的选项字段也可像网友玉开那样将选项单独建表)、正确答案表、用户答题表(为每个用户存储其回答的答案,方便统计分析)、其他表。 2、各表的主要字段: 用户表(略。一般为ID、用户名、密码、密码提示问题、姓名等等字段) 题目表(含选项字段)字段和数据存储举例如下 ID、题目(以文本形式存储题目及选项)、题目类型(单选、多选还是填空)、显示 1 1、刚刚在博客园的博客网址是哪些? 多选题 1 A、lijigang.cnblogs.com B、www.cnblogs.com/lijigang C、space.cnblogs.com D、ganggang.cnblogs.com E、hi.baidu.com/lijigang 2 2、你在博客园的网址是____________ 填空题 1 3 3、博客园的首页网址是那个? 单选题 1 A、www.cnblogs.cn B、wwww.cnblogs.com C、www.cnblogs.net D、www.cnblogs.com …… 正确答案表 ID、题目ID、正确答案 1 2 cnblogs.com 2 3 D 3 1 AB …… 用户答题表 ID、用户ID、题目ID、用户答案、得分 1 1 3 D 10 2 1 2 www.cnblogs.com/jclwolf 10 3 1 1 AD 0 4 2 2 hi.baidu.com/yukaizhao 0 5 2 1 AB 10 6 2 3 B 0 …… 3、关键表的关系(1:1表示一对一关系,1:∞表示一对多关系): 题目表1:1正确答案表、题目表1:∞用户答题表、用户表1:∞用户答题表 4、视图: 通过上面的关系各建立一张视图。 【其他说明】:可以将正确答案表与题目表合并为一张表。(以上数据内容仅供参考并非实际问卷调查数据内容,主要是为了说明表中字段的结构和存储数据内容的方式,无任何其他意义) 二、程序设计 1、后台出题程序。管理者从题库里面选择一定数量的题目(比如十道题,每题十分,共一百分),这个程序的开发不是很难,就从题目表中选题就可以了,如果被选择了,则题目表中的“显示”字段为1,否则为0。 2、前台答题程序。一般可以分页显示,比如3题一页显示,每次点击下一页,将上面的题目的用户回答存储到数据库用户答题表中,避免用户重复答题,或丢失答案。(不知道游客是否能答题,如可以你需要给游客一个身份) 3、统计答题分数或查询答案等,这些都比较简单,根据后台表和视图完成就可以了。 搜集性问卷调查题目 如:你访问博客园的情况?A、每天来 B、隔几天来一次 C、一周一次 D、一月内小于等于3次的访问 E、不常来 F、没听说过,不知道这个地方
2008/7/7 20:08:28 回答者:刚刚


提问者对于答案的评价:非常感谢
其它回答(1)
你想的太简单了,调查问卷一般会有这么几种问题类型:多选题,单选题,文本框输入题。而多选,单选都需要选项 你可以参考一下,我设计的表结构。
2个月前   回答者:玉开 - 大侠五级
评论
2个月前   Jerry Qian :
照顾一下新手啊.看不懂.
2个月前   玉开 :
刚刚 同学写的很细致。我也对关系图中的表简单的说明一下:
Form表是答卷定义,你的考试系统肯定不是只做一次考试,所以需要一张表存放不同的考卷的信息:名字、描述、开始时间,结束时间
Question表是问题表,用来定义一次考卷中的题目,题目有填空,单选,多选,它有一个type字段,你可以定义是什么类型的题目
Option表是用来存放单选,多选题选项的
上面的三张表构成了考卷的信息,下面的表用来存放答案数据
Answer表:每一个学生答的考卷会在Answer表中有一条记录
AnswerItem表:用来存储单选题,和填空题的答案;对于多选题,因为会有多个选项,如果我们放在一个字段是会给统计造成麻烦,所以引入AnswerItemOption表来存储多选题的答案。





2个月前   Jerry Qian :
我的是搜集形的.每个题没有什么正确的答案只,但要统计用户选了什么,填了什么.以上两位回答得都挺好,如果有时间就就做成一个通用的调查问卷.三天我怕做不完.
1个月前   刚刚 :
搜集答案的问卷调查就更简单了,无需评分,用户答完就算完成了,不过难就难在统计分析上了,尤其是你允许输入文本答案的问题统计,可能相同意思的答案但书写的文字不同,比如:“馍馍”和“馒头”都是一个意思,但统计起来就麻烦了。
1个月前   Kevin Li :
have a study
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题

> 问题排行榜

相关链接