网上投票系统的研究以及实现
在线投票
应用科技学院软件工程专业
120642009114尤捷指导教师 洪中
摘 要
【摘 要】在信息发达的今天,人们对信息的需求越来越多,各种各样的调查,正变得越来越普遍。传统的问卷调查,需要编写、印刷、分发,填写、收集和手工统计等步骤,手续繁琐,不可避免地要受到人力成本和地域的限制。
随着互联网的蓬勃发展,网络投票系统应运而生,它的潜在优势就是可以不受地域限制,无论你身在何方,只要身边有一台电脑,你可以随时进行投票。不仅大大方便了投票,也可以实时地获取计票的统计结果。
3.2
权限分为:前台管理和后台管理。
前台管理:具有注册登录,投票,留言等内容。
后台管理:从后台很方便的添加新问题,修改及删除现有的问题。
4
4.1
该系统主要由以下六个模块组成:登陆注册模块,管理员模块,客户模块,留言簿模块,新闻模块,投票模块。如下图所示:
图4-1系统模块结构图
4.2
客户模块主要是对投票信息进行修改,删除,比如投票的用户,选项以及用户留言可以进行系统配置要求。
步骤二:实现以图片来表示投票结果,最关键的是根据票数来计算图片的显示长度。
在显示投票选项页面index.ASP中,单击“投票结果”按钮将打开投票结果页面vote1.ASP。
在该页面中,首先查询数据表获取记录数据并计算投票的总票数,然后使用“for…next”循环语句依次计算各选项的投票数量所占的百分比以及显示的柱形图的宽度,再将选项标题、对应的投票数量、投票百分比以及柱形图输出到浏览器。
CREATE TABLE vote
(
id INT NOT NULL AUTO_INCREMENT,
flag int,
optType int,
question CHAR(255),
optContent CHAR(255),
number INT,
PRIMARY KEY(id),
);
表5-1 注册表register
管理员模块是指管理员对项目进行的管理模块,包括项目的管理,选项的管理以及系统设置的管理。可以对项目的删除和编辑,选项的删除,更新和添加,系统配置的删除和更新。
(5)注册登陆模块
登陆注册主要为管理员和客户进入相应权限的桥梁。
(6)投票模块
支持多选及单选,设定每次为单个/多个选手投票;投票结果统计,直观的柱状图显示投票结果。
关键词:数据库;ASP;Mysql
1 绪论
1.1
现在许多服务行业都需要为了提高反馈,服务产品的质量,更好地服务,在线投票系统是一款通过反馈的信息,可以更好的软件更快速反馈信息完全服务提供商提供参考。所以,为客户开发一个快速反馈信息平台是十分必要的。投票系统的好处有:
(1)更方便的操作。原有的手工投票管理基本上是人工操作、效率低下、缺乏方便性,在线投票管理系统运用计算机和其他附加设备,不需要手工操作,基本上是自动化,能够节省人力、最大限度地利用各种宝贵的资源,能有效提高效率。
该系统属于实用的网站,需要对数据进行处理,统计的选票,为选民投票结果反馈更新数据,要求较高,保证数据的真实性。在任何操作系统系统能跑,但必须配备的数据库。
在线投票功能是网站应用程序常用的功能之一,也是网站应用程序开发常用的功能模块。当网站的管理员或用户提出一些新的想法与建议或者出现一种新产品时,他们也许需要通过用户或者客户的投票方式来认定这些新的想法、建议或者新的产品是否满足用户需求,另外,网站还可以通过网站在线投票功做一些实际性的调查工作。对于整个系统而言,系统在未运行之前初期投资比较大,花费相对而言比较多,各部门配置电脑、服务器、打印机、传真机及相关的网络设备,但在整个系统投入运行之后,现在计算机已经普及了,减少了数据的流通环节,不必要花费那么多时间,就是说重要的是提高了效率,由保证了各项数据的准确性,也避免了工作人员的流动造成的数据丢失,适应了当前的发展形势。
字段名
数据类型
长度
约束
说明
userid
int
4
not null
自动增长
username
varchar
40
not null
用户名
userpass
varchar
40
not null
密码
registertime
datatime
8
not null
注册时间
usergrade
int
4
not null
用户级别
isvail
5
5.1
系统总体结构如图5-1所示:
图5-1 网上投票系统功能结构图
5.2
(1)注册登录模块功能设计
管理员和客户登陆界面;根据身份从而跳入相应的页面,实现注册登陆功能。
输入处理输出
图5-2 注册登陆页面管理员流程图
图5-3注册登陆页面会员注册流程图
(2)注册登录页面数据流
图5-4注册登陆页面数据流图
2)参与投票选项
步骤一:如果用户不符合投票要求,则给出相应的提示信息。例如,用户未选择选项而进行投票或者在1小时之内试图多次投票。
步骤二:将用户投票的IP地址记录到指定的变量中,并设定此变量有效期限为1个小时,然后更新数据表中对应投票选项的投票数量,即投票数量累加1。
在显示投票选项页面index.ASP中,选择投票选项然后单击“投票”按钮,程序处理页面vote.ASP首先判断用户是否选择投票选项。
4.3
新闻模块主要是一些关于本系统的新闻信息,其中包括新闻显示和添加删除模块。
图4-2新闻模块内部结构图
4.4
系统板模块选民的需求,包括回复邮件和管理员模块。留言板提供一个平台为用户提供更好的信息反馈,我们的用户,我们可以投票时间来改变我们的内容。
4.5
管理模块是项目管理模块,包括项目管理,管理和系统设置管理员的管理选项。
int
4
not null
是否是有效用户
表5-2 数据库中的register表
userid
username
userpass
usergrade
isvail
1
newsadmin
123456
1
1
2
voteadmin
123456
2
1
3
messagedmin
123456
3
1
表5-3 投票表vote
字段名
数据类型
(2)简洁友好的界面。友好的用户界面会给人一种亲切的感觉,在使用起来不会觉得很沉闷,效率自然也会提高了。
在线投票系统主要用来统计网站或者用户对某个主题或热门话题。决策者通过这些统计数据做出相应决策。它是一般网站必备的程序之一,网站开发者可以通过它了解用户对该网站的意见和建议。
1.3
在线投票系统用来统计网站用户对某个主题或热门话题的意见。决策者可以通过这些统计数据做出相应的决策。在线投票系统是一般网站必备的程序之一,网站开发者想了解用户对该网站的意见和建议。他就可以设计这样一个投票主题:你觉得该网站如何?(A.很好B.一般C.不好)然后提供给用户进行投票。
步骤二:查询在步骤(1)中创建的数据表,创建记录集。
步骤三:通过“for…next”循环语句将多个投票选项的题目依次输出到客户端浏览器
在显示投票选项页面index.ASP中,第一次查询数据表中的记录,然后使用“for…next”循环语句逐个显示记录中对应的“投票选项标题”字段数据,每一种选择对应一个单选按钮。在这个页面上,点击“投票”按钮可以打开投票结果页面。
输入处理输出
图5-12客户模块流程图
(2)客户模块页面界面设计
客户模块就是对投票进行添加,删除和查看,客户管理员可以从后台登陆对投票进行管理。
图5-13客户模块界面图
5.8 系统数据库设计
客户模块就是对投票进行添加,删除和查看,客户管理员可以从后台登陆对投票进行管理。
(1)表设计
创建数据库中用到的投票表:
图4-3 投票模块结构图
图4-4 投票系统流程图
系统分为前台和后台,前景是一个用户注册,投票模块,新闻模块,留言板模块,通过管道回短信登录的消息,留言板和投票进行删除,添加,查看和修改。系统建立了新闻模块,留言板和投票模块,模块管理,管理员用户名和密码三个管理员,分别,总访问不同页面的数据,业务管理。
5.3
(1)投票模块功能设计
投票投票给游客选择模块项目,根据项目管理模式跳转到对应的页去投票,投票系统配置测试,可以搜索的结果。
图5-5 投票模块流程图
(2)投票模块界面设计
图5-6 投票模块界面图
(3)投票模块设计说明
1)显示投票选项:
项1到投票选项4标题和投票数量,可以根据实际情况填写一定数量的投票选择数据。
投票系统具有极大的灵活性,投票类型分为单选投票和多选投票。管理员可以设计不同的投票主题供用户进行投票。
2
2.1
网上投票系统能可以很方便的统计我们所关心的问题。较好的收集群众的意见。支持多问题(不限问题个数),支持调查选项的单选及多选(选项在10个之内),支持调查者的其它意见,支持后台管理还支持各种界面的设定等。
5.4
新闻模块功能设计
新闻模块包括新闻查看,添加和删除。
图5-7新闻模块流程图
通过管理员登陆后台,可以进行新闻的添加删除和查看。新闻的添加,查看以及删除可以通过登陆实现。
5.5
(1)留言板模块功能设计
图5-8留言板模块流程图
(2)留言板模块页面设计
图5-9留言板模块界面图
5.6
(1)管理员模块功能设计
4.6
登录,主要是为管理员和客户的适当的权限来访问的桥梁。注册登录模块需要添加相关信息,然后可以直接登记注册,如果用户名和密码登录。登录后才可完成用户认证,用户信息的变化,用户管理功能。只有登录用户才可以投票。