纲要
本文介绍一个用 asp 技术实现的 web 调查系统(也称为投票系统)的实现,该系统支持基于浏览器的调查项目创建与维护、调查表单的动态生成以及投票结果分析。
目录
一、系统概貌
二、调查项目的创建和维护
三、调查表单的生成与结果分析(附源程序)
一、系统概貌
作 者 : 仙人掌工作室
本文所介绍的 web 调查系统(或称为投票系统)支持基于浏览器的调查项目创建、管理与结果分析。调查项目及其下属各个问题的定义、用户投票结果存储于 access 数据库,调查表单由脚本动态生成。用户通过单选按钮或复选框回答问题,表单提交之后服务器在同一个数据库中记录调查结果。通过 web 调查系统的分析模块,用户可以立即获知任意调查项目的投票结果。
整个系统以数据库为中心,因此,本文也可以看成是在 asp 应用中维护数据库的一个演示,如表的创建、删除,以及基于浏览器的数据库记录创建、删除、编辑,这些操作均由服务器动态生成的 sql 命令、 javascript 脚本实现。
一、系统概貌
㈠系统构成
从功能上看,整个系统可以分成四个部分,分别对应于图 1 到图 4 四个页面。其中图 1 和图 2 是系统的维护界面。图 1 所示的页面用于创建调查项目、删除调查项目或其投票结果,以及指定调查项目名字和用户密码访问图 2 所示的调查项目编辑器。
【图 1 webpollsystem_1.gif 】
图 2 所示页面用于编辑指定调查项目所属各个问题,直接提供的功能包括创建新问题、删除问题、更改问题的提示文本以及浏览问题等,综合运用上述功能可以重新定义问题类型。本系统支持 5 种问题类型:是 / 否(即只需回答“是”或“否”的问题),赞同程度(系统为这类问题预定义从“强烈反对”到“完全赞同”共 5 个等级的答案)、自定义语义的等级区分(预定义 7 个等级的答案,但具体含义由用户定义),自定义提示文本的多个选项(选项数量以及各个选项提示文本均由用户指定,每个问题只能选择一个答案),允许复选的多个选项(选项数量以及各个选项提示文本也由用户指定,允许选择多个答案),后面两种问题类型允许最多 26 个选项。图 2 中间(底部提示行的上面)所显示的即为第 4 种问题类型(多个选项)的编辑界面。
【图 2 webpollsystem_2.gif 】
图 3 是 web 用户所见到的调查表单。图中显示的 4 个问题依次对应于前面 1 — 4 种问题类型,第 5 种问题类型(允许复选)要求用复选框回答问题,图中没有显示出来。用户在选择结束后只要单击页面底部的“提交”按钮即可。
【图 3 webpollsystem_3.gif 】
图 4 是投票结果的统计分析页面。
【图 4 webpollsystem_4.gif 】
access 数据库 poll.mdb 的 odbc 系统 dsn 名为“ poll ”。每一个调查项目都需要下表所定义的三个表,它们在创建新的调查项目时由 asp 脚本自动创建,其维护工作也可以通过浏览器进行。这三个表的名字分别以 s_ 、 a_ 、和 r_ 为前缀,后面加上调查项目的名字,分别用来保存调查项目的问题和问题标识( stem )、答案类型( answer )、用户回答( response )。
问题表 (s_)
字段名称 类型 大小 索引 说明
id text 3 yes 主关键字
type text 1 no
noopinion text 1 no
stem text 200 no
答案表 (a_)
字段名称 类型 大小 索引 说明
id text 3 yes 主关键字
alabel text 1 yes 主关键字
answer text 150 no
用户投票结果表 (r_)
字段名称 类型 大小 索引 说明
responses text 100 no
startup.html 负责生成系统维护页面的帧结构; pollmaker.asp 负责生成图 1 页面并支持从该页面启动的其它操作(调查项目的创建、删除、投票结果清除等); itemmaker.asp 负责生成图 2 页面,支持调查项目所属问题的定义、编辑、删除。调查表单(图 3 )由 pollwriter.asp 生成,投票结果的分析(图 4 )由 pollresult.asp 实现。整个调查系统的工作以数据库为中心: pollmaker.asp 和 itemmaker.asp 需要创建、删除、修改 poll.mdb 中定义调查项目的各个表; pollwriter.asp 从 s_ 和 a_ 表生成调查表单;当用户提交调查表单时 pollmaker.asp 中的一个函数将投票结果写入对应的 r_ 表; pollresult.asp 联合 s_ 表和 a_ 表中的文本数据以及 r_ 表中的投票结果,生成当前调查项目的结果统计图表。
㈡如何创建和编辑调查项目
在正确安装 web 调查系统之后(请参见本文所附源代码中的安装说明),就可以用浏览器打开 startup.html ,出现图 1 所示的身份验证页面。下拉列表框列出了当前在 poll.mdb 中定义的所有调查项目。如果要创建一个新的调查项目,必须先在列表框中选择“ new poll ”,然后在列表框的右边输入新调查项目的名字,在密码输入框输入密码(缺省为“ webpoll ”,大小写均可),最后单击“创建 / 编辑调查项目”按钮。要删除某个调查项目已有的结果记录,或将调查结果与调查项目本身一起删除,分别使用“删除调查结果”或“删除当前调查项目”按钮。
创建或编辑调查项目所属的问题都在图 2 所示的页面进行。在创建一个新的问题之前,先应该选择合适的问题类型(页面上端的单选按钮);对于“多个选项”或“允许复选”这两种问题类型,还必须指定所提供选项的数量;如果选中了“允许不回答”复选框,则除了“允许复选”之外的所有其它类型问题都将附加一个“暂不回答”选项(单选按钮)。在做好上面这些选择之后,单击“新建”按钮就会出现一个空白的问题定义表单。接下来就可以输入问题提示文本,如必要的话再输入答案中的提示文本,文本中可以嵌入 html 标记。如果要改变问题的类型或答案数量,则需先删除原有的问题定义,然后再新建问题。所有的创建和编辑工作都在客户端进行,可以用“保存”按钮将这些修改保存到服务器上的 poll.mdb 数据库。
图 2 中的问题浏览按钮用来查看当前调查项目中的各个问题,在“转到指定问题 – 〉”按钮后面输入问题序号,然后单击按钮即可显示对应的问题。新定义的问题总是加入到调查项目的最后。如果要将它放到另外一个位置,只要在“移到该问题后面”按钮后输入合适数值并单击该按钮,输入数值 0 可以将问题移到最前面。
(未完待续)
用 ASP 技术开发WEB调查(投票)系统 (1)-ASP教程,ASP应用
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用 ASP 技术开发WEB调查(投票)系统 (1)-ASP教程,ASP应用
相关推荐
-      ASP 简介
-      SQL注入天书 – ASP注入漏洞全接触
-      用.net 处理xmlHttp发送异步请求
-      asp.net创建文件夹的IO类的问题
-      如何实现ASP.NET网站个性化
-      关于ASP.NET调用JavaScript的实现
-      ASP利用Google实现在线翻译功能
-      Asp无组件生成缩略图