已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中中 原原 工工 学学 院院 毕毕 业业 实实 训训 任任 务务 书书 2009 年 5 月 8 日 学生姓名学生姓名张敏娟学号学号200770832201 专专 业业计算机软件编码班级班级072 班 课题名称课题名称苹果投票系统 课题来源课题来源实训阶段题目 指导教师指导教师于翔专业专业软件工程职称职称实训讲师 课题说明:课题说明: 随着 internet 的发展,世界网民的数量急剧增加,社会的信息化强度增强, 企业竞争之激烈,故对市场信息的掌握范围不仅仅是周边的一些信息,而应把范围 扩展到全国,甚至全世界。internet 恰恰是实现这目标的有利工具.对于新产品, 新观点的调查范围应该更广泛,消息应该及时反馈给企业单位,故一个网上在线投 票系统应运而生,它正好充分满足客户的需求,信息反馈的范围扩大,人力资源的 节省,从而使得企业在竞争激烈的市场中拥有更强大的资本.开发此投票系统是为了 更好的把市场的信息更准确更快速的反馈给客户,使信息的来源更广泛,从而提高 信息的准确性.运用此系统可以降低企业为市场调查而消耗的人力和物力,利用节省 的资源提高产品的质量,增强竞争力。 承担的任务承担的任务: 本项目由本人独立开发完成。包括前期的需求分析和数据库设计。 1客户模块,主要是管理登录该系统的用户; 2新闻模块,主要功能是管理发布在该网站的新闻; 3留言簿模块,主要功能是管理用户留言、恢复等; 4管理员模块,主要功能是管理该系统的反馈信息,与后台数据库进行交互; 5登录注册模块,主要是实现用户登录或注册的功能,不同的用户级别有不同 的权限; 6投票模块,主要功能是实现用户的投票,其中可以通过控制时间和 ip 的方法 保证投票数据的合理性。 中中 原原 工工 学学 院院 毕毕 业业 实实 训训 任任 务务 书书 2009 年 5 月 8 日 工作进度安排:工作进度安排: 2009.4.15-2009.4.19 系统的需求分析,概要设计阶段 2009.4.20-2009.5.25 系统的数据库概要设计,详细设计阶段 2009.4.26-2009.4.29 系统的界面设计阶段 2009.4.30-2009.5.5 系统的编码及测试阶段 2009.5.6-2009.5.8 项目的文档整理阶段 指导教师签字:指导教师签字: 年年 月月 日日 实训单位意见实训单位意见 签章:签章: 年年 月月 日日 学学院院意意见见 签章:签章: 年年 月月 日日 中中 原原 工工 学学 院院 毕毕 业业 实实 训训 评评 审审 表表 学号学号200770832201姓名姓名张敏娟专业专业计算机软件编码班级班级072 题目题目苹果投票系统 指指 导导 教教 师师 评评 语语 校外成绩(百分制):校外成绩(百分制):校内成绩(百分制):校内成绩(百分制): 校外指导教师签名:校外指导教师签名:校内指导教师签名:校内指导教师签名: 总评成绩(百分制):总评成绩(百分制): 年年 月月 日日年年 月月 日日 年年 月月 日日 苹果投票系统 学生:张敏娟 校外指导教师:于 翔 校内指导教师:缑西梅 2009 年 5 月 8 日 i 摘 要 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识, 它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分, 在先进的计算机技术、通信技术及控制技术基础上,采用系统集成方法,逐步建立一个 智能化的投票系统。网上投票系统除了能完成传统的功能之外,更具有方便、及时和范 围广的优点,更符合现代社会的需要。 本文档首先介绍了网上投票系统的背景和现状,其次对本系统进行了简单的介绍。 然后介绍了本系统在 asp.net(c#)+sql server2005 环境下网上投票系统开发的全过程, 系统是基于 b/s 体系结构的。最后根据需求开始工作,如数据库的设计,代码编写以及 页面、功能的实现等。代码编写完成后,对本系统进行了测试。测试结果良好,基本满 足了需求。 虽然网上投票系统在实施过程中还是会存在一些不安全因素,但这种方式是社会的 一大进步,也将成为将来的一种主流趋势。随着社会的发展,网上投票系统也会不断发 展,更好的发挥它的作用。 关键词: 投票系统;b/s 体系结构;asp.net;sql server2005 目 录 摘摘 要要i 第第 1 章章 课题来源课题来源.1 1.1 项目现状分析.1 1.2 开发目的.1 1.3 系统说明.2 1.3 相关技术说明.2 第第 2 章章 需求分析需求分析.3 2.1 功能性需求.3 2.1.1 登录功能.3 2.1.2 添加投票项3 2.1.3 删除、修改投票项4 2.1.4 查看投票项4 2.1.5 用户投票4 2.1.6 添加新闻4 2.1.7 查看新闻4 2.2 非功能性需求.4 2.2.1 用户界面需求4 2.2.2 软硬件环境需求5 2.2.3 产品质量需求5 第第 3 章章 数据库设计数据库设计.7 3.1 数据库功能及约束.7 3.2 数据库的需求分析.7 3.3 e-r 图8 3.4 创建数据表的 sql 脚本.8 3.5 数据表设计.10 第第 4 章章 系统概要设计系统概要设计.13 4.1 系统组成模块.13 4.1.1 客户模块13 4.1.2 新闻模块13 4.1.3 留言薄模块14 4.1.4 管理员模块14 4.1.5 登录注册模块14 4.1.6 投票模块14 4.2 系统流程图.14 第第 5 章章 系统详细设计系统详细设计.16 5.1 登陆注册模块.16 5.1.1 功能描述16 5.1.2 界面设计16 5.1.3 数据流17 5.2 投票模块.17 5.2.1 功能描述17 5.2.2 界面设计18 5.3 新闻模块.19 5.3.1 功能描述19 5.3.2 界面设计20 5.4 留言簿模块.22 5.4.1 功能描述22 5.4.2 界面设计22 5.5 管理员模块.23 5.5.1 功能描述23 5.5.2 界面设计24 5.6 客户模块.24 5.6.1 功能描述24 5.6.2 界面设计24 第第 6 章章 编码测试编码测试.26 6.1 登录模块.26 6.1.1 编码26 6.1.2 测试27 6.2 用户投票模块.28 6.2.1 编码28 6.2.2 测试31 6.3 新闻模块.32 6.3.1 编码32 6.3.2 测试33 6.4 留言模块.33 6.4.1 编码33 6.4.2 测试35 第第 7 章章 结束语结束语.36 附录附录 a: 主要源程序主要源程序39 张敏娟:苹果投票系统 1 第 1 章 课题来源 由于现今社会,信息的主要特点是量大、范围广、更新快。及时而准确的得到用户 的反馈,来做出新的调整,以谋取更大的利益成为企业考虑的主要问题。在这种形势驱 动下,网络投票系统显得尤为重要。 1.1 项目现状分析 在积极建立科学管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,管理 部门面对大量的信息,无法有效率地将其中的重要部分提取出来,并做出相应的判断和 处理。投票管理者的决策只能依据手工表数据,在浪费大量人力、物力的同时无法做到 实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想就成为了一个可望 而不可及的目标。投票工作非常急需一套既有先进管理思想的系统,作为实现目标和提 高现有投票管理水平的一种重要手段。随着科学技术的不断提高,计算机科学日渐成熟, 作为计算机应用的一部分,在先进的计算机技术、通信技术及控制技术基础上,采用系 统集成方法,逐步建立一个智能化的投票系统。 网上投票系统除了能完成传统的功能之外,更具有方便、及时和范围广的优点,更 符合现代社会的需要。编写在线投票系统,最重要的一点就是如何从烦琐的投票结果中, 导出全部投票项目的票数,然后根据投票项目的各个票数,进行票数百分比计算,最后 编辑出在线投票系统。虽然网上投票系统在实施过程中还是会存在一些不安全因素,但 这种方式是社会的一大进步,网上投票也将越来越成为一种主流的发展趋势。 1.2 开发目的 当前社会是民主社会,很多策略、决策和行动方案的制定,大多数情况下要根据民 主评选的结果来决定。然而,过去的那种以人数票以人机票的方式,有很大的弊端。比 如说:由于私心或失误,导致投票不公,且实时性差,不能及时做出统计,浪费人力、 物力与财力。投票系统的诞生适应了时代的发展,繁琐的事情交给电脑去做,不但准确, 而且高效。并且,随着 internet 的发展,世界网民的数量急剧增加,社会的信息化强 度增强,企业竞争之激烈,故对市场信息的掌握范围不仅仅是周边的一些信息,而应把 范围扩展到全国,甚至全世界。internet 恰恰是实现这目标的有利工具。 对于新产品,新观点的调查范围应该更广泛,消息应该及时反馈给企业单位,故一 个网上在线投票系统应允而生,它正好充分满足客户的需求,将信息反馈的范围扩大, 张敏娟:苹果投票系统 2 节省人力资源,为企业在竞争激烈的市场中赢得先机。开发此投票系统正是为了更好的 把市场的信息更准确更快速的反馈给客户,使信息的来源更广泛,并且通过一些方法, 如限制时间和 ip 等提高信息的准确性。运用此系统可以降低企业为市场调查而消耗的人 力和物力,利用节省的资源提高产品的质量,增强竞争力。 1.3 系统说明 该系统运用.net framework 2.0 框架,使用 visual studio2005,结合 sql server2005 数据库,使用完全面向对象语言,进行开发,可复用性强,可扩展性高,且易于维护。 本系统功能完善,不单是对于具体的项目投票,可以对多种投票项目进行投票,投票方 式也有单项和多项可选。客户可以根据需要到网站发布信息,根据用户的反馈做出策略 上的调整。 本系统已网站的形式向用户开放,更方便,更快捷,客户不用安装客户端软件,省 去很多麻烦,且容易维护。本系统应用范围广泛,预计在试用期就会有极高的点击率。 1.3 相关技术说明 该项目的开发需要用的是语言是 c#; 采用了当今最为流行的 asp.net 技术来开发; 数据库使用的是 sql server2005。 张敏娟:苹果投票系统 3 第 2 章 需求分析 本章节主要介绍了该系统要实现的主要目标,在该系统进行编写代码以前,整理清 楚该系统主要的业务流程,客户的需求,更模块之间的联系等等。需求分析阶段是整个 系统的基础阶段,没有一个完整的需求,一个系统将崩溃瓦解。 2.1 功能性需求 在线投票功能是网站应用程序最常用的功能之一,苹果投票系统主要包括以下的系 统功能。 2.1.1 登录功能 用户需要填写正确的姓名、密码和身份类型,系统会根据用户不同的身份跳转到不 同的页面。系统分为管理员和客户两种身份。 2.1.2 添加投票项 该功能为客户所拥有,用户必须首先注册成为该网站的合法客户,然后使用正确的 用户名和密码登录系统,可以添加投票项。 添加投票项界面需要用户添加投票标题,是否限制 ip,时间间隔,结束时间,表示 图片,投票模式等信息。数据填写完整后并确认后,系统验证数据合法性,验证通过后 根据相应信息,跳转到相应页面。 投票模式分为单选投票和多选投票。当用户选择多选模式后,系统会跳转到投票选 项页面,该页面用户可以逐条添加投票选项。也可以完成投票选项的添加。当用户选择 单选模式后,系统验证数据合法性,验证成功,则跳转到系统主页面。 投票项可以根据客户和投票项的具体情况,进行 ip 和时间的限制。限制 ip,即同一 个 ip 地址只能进行一次投票,不限 ip 限制时间,即同一个 ip 地址投票之后,再过多长 时间才可以进行第二次投票(本系统设置的时间单位为分钟)。也可以选择不限 ip、不限时 间,即时间间隔为 0(通常这种情况较少)。这些都由用户自行设定。 投票截止时间,是指该投票项到某一时间后,投票无效,每次运行系统的时候,系 统都会检测,每个投票项是否在有效时间内,如果超过截止时间,则主页面不显示。用 户将无法看到该投票项,也无法对该项进行投票。 张敏娟:苹果投票系统 4 2.1.3 删除、修改投票项 该功能为管理员所拥有,管理员应该定期维护网站,如果发现网站中有些数据含有 恶意行为,或者语言粗鄙者,可以对该投票项进行删除。如果某项投票项表意不清楚, 用词含糊或有明显的错字词,管理员可以对投票项进行修改。 2.1.4 查看投票项 该功能为所有浏览该网站的用户所有。在登录网站之前也可以对投票项进行浏览。 2.1.5 用户投票 该功能为苹果投票系统的主要功能,为所有浏览该网站的用户所使用。用户可以根 据自己的需要,选择合适的投票项,选择具体的投票项目,页面跳转到投票页面,如果 为多项投票,则投票页面列出投票项的所有投票选项,用户可以选择其中一项进行投票, 如果是单项投票,为该项目投票,则表示赞成该投票项标题观点。其中,用户如果频繁 的点击投票按钮,系统会根据该投票项的配置选项,即 ip 和时间,进行判断,如果 ip 或 时间不合法,则用户的再次投票无效。用户可以查看该投票项的投票情况,总票数和每 个投票选项的票数,显示数字的同时用横向柱形图显示比例,使结果更清晰直观。 2.1.6 添加新闻 该功能由管理员所拥有,添加新闻之前,系统首先进入一个验证页面,用户需填入 正确的信息,验证通过后,进入新闻添加页面,需要添加新闻标题、作者、内容、图片 等信息,信息填写完成并提交后,页面显示添加结果的提示信息。 2.1.7 查看新闻 该功能由所有浏览该网站的用户所有,点击查看详情,可以查看该新闻的详细信息。 2.2 非功能性需求 2.2.1 用户界面需求 苹果投票系统的主体颜色为绿色,显得具有生机和活力,起到与“苹果投票系统” 相互呼应的作用。 系统主界面用 gridview 控件显示投票的整体信息,包括投票项目标题和投票总数标 张敏娟:苹果投票系统 5 志图片等。 各个模块内的功能采用顶栏按钮的形式。 投票结果的统计在显示数字的同时,用横向柱形图的方式显示,使结果展示的更为 清晰直观。 界面设计合理,在能让用户选择的情况下,不让用户手写,既保证了数据的合法性, 也使系统操作更为简单、方便。 2.2.2 软硬件环境需求 该系统的软硬件环境需求如下: web 服务器要求:iis6.0 数据库要求:sql server2005 操作系统要求:windows 2000、xp 浏览器要求:windows 系统下的 ie5.0 以上或 linux 系统下的 mozilla c#运行环境要求:.net framework2.0 框架 处理器要求:推荐使用 intel 服务器 cpu xeon5355 2.66g 内存要求:推荐使用 4g 或更大内存 硬盘要求:raid 系统:4*80g 光驱要求:8 倍以上 2.2.3 产品质量需求 正确性方面,在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工 作量,使系统的出来能力和相应时间能够满足企业对信息处理的需求。 性能效率方面,苹果投票系统在日常处理中的响应速度为秒级,达到实时要求,以 及时获取相关信息。在进行统计分析时,根据所需数据量的不同而为秒级或分钟级,原 则是保证操作人员不会因为速度问题而影响工作效率。 易用性方面,苹果投票系统是直接面对使用人员的,而使用人员往往对计算机并不 是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这 一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现 的使用问题,做出充分的准备,避免或者解除问题。 安全性方面,系统本身进行了严格的权限控制,相关人员决不会越权进行数据操作。 投票系统中涉及到一些重要数据的保存、维护等问题,系统要提供方便的手段供系统维 张敏娟:苹果投票系统 6 护人员进行数据的备份,日常的安全管理,系统意外崩溃时,数据的恢复等工作。 可扩展性方面,苹果投票系统在开发过程中,应该充分考虑以后的可扩充性。例如 新闻模块可以增加新的功能,各项投票项目也会不断的更新和完善。所有这些都要求系 统提供足够的手段进行功能的调整和扩充。而要实现这一点,应该通过系统的开放性来 完成,即系统应是一个开发系统,只有符合一定的规范,可以简单的加入和减少系统的 模块,配置系统的硬件。通过软件的修改、替换完成系统的升级和更新换代。 张敏娟:苹果投票系统 7 第 3 章 数据库设计 本章节主要介绍了数据库设计阶段所作的工作,对数据库中的各个数据表做出了详 细介绍,同时简单描述了数据表中的各个字段,以及各个表之间的主、外键关系,通过 本章节的阅读,读者可以清楚的知道,本系统中投票标题、项目,投票数据等的数据储 存方式,对更好的操作、使用本系统起到了良好的引导作用。 3.1 数据库功能及约束 数据库的功能主要是对系统数据进行存储。通过合理的数据库结构设计,使数据存 储更为方便,更易于客户端对数据的操作,如添加数据、修改数据、删除数据等。本系 统中数据库中总共有 11 张表,根据第一范式和第二范式设计原理,表与表相互独立又相 互联系和依赖,表结构合理。其中,为了保持数据的一致性,为了防止产生错误数据和 垃圾数据,对相应的字段做了基本约束,如是否为空,数据格式等,同时采用了主键和 外键约束,当主表中的数据删除后,从表中的数据也相应删除。同时,在数据库设计中 使用了触发器,用于保证更新单票数和总票数的一致性,其触发器代码如下: 触发器建于表 voetdetails(选项表): create trigger updatevotesum on dbo.voetdetails for update as begin update votemaster set votesum=votesum+1 where id=(select top 1 id from inserted) end 3.2 数据库的需求分析 依据苹果投票系统的处理需求,对就数据表的设计及功能如下: 管理员表:主要存储系统管理员信息。 客户表:主要存储系统客户信息。 留言表:主要存储网站的浏览用户留言信息。 新闻表:主要存储信息发布在网站上的新闻信息。 新闻类别表:主要存储网站上的新闻类别信息。 投票标题表:主要存储网站中的投票项的相关信息。 投票选项表:主要存储网站中多选模式的投票项的投票选项信息。 系统配置表:主要存储投票项的配置信息。 投票人员表:主要存储投票者的相关信息。 张敏娟:苹果投票系统 8 3.3 e-r 图 投票项目 删除 管理员 添加 客户 选项 投票选项 投 投票者 配置 系统配置 psw tel name idcheckip checktimeme id ipvotetime votenum id votenum voteitem name psw telephone email votetitle votesume id endtime image votedetnilsid mm n n 1m 1 1 n n 图 3.1 系统 e-r 图 3.4 创建数据表的 sql 脚本 由于本系统数据库表较多,在此对创建数据表的 sql 脚本不一一列出,只把几张主 要表的脚本写出。以供读者参阅、理解,如有更多需要,请查阅数据源。 1.创建管理员表的 sql 脚本如下: create table dbo.admin( id int identity(1,1) not null, name varchar(20) collate chinese_prc_ci_as not null, psw int not null, tel varchar(30) collate chinese_prc_ci_as not null, 张敏娟:苹果投票系统 9 constraint pk_votemanger primary key clustered ( id asc )with (ignore_dup_key = off) on primary ) on primary 2.创建客户表的sql脚本如下: create table dbo.guest( name varchar(40) collate chinese_prc_ci_as not null, psw varchar(20) collate chinese_prc_ci_as not null, email varchar(40) collate chinese_prc_ci_as null, telphone varchar(20) collate chinese_prc_ci_as not null, 个人网站 varchar(50) collate chinese_prc_ci_as null, constraint pk_guest primary key clustered ( name asc ) with (ignore_dup_key = off) on primary ) on primary 3.创建投票标题表的sql脚本如下: create table dbo.votemaster( id int identity(1,1) not null, votetitle varchar(30) collate chinese_prc_ci_as not null, votesum int not null constraint df_votemaster_votesum default (0), image varchar(40) collate chinese_prc_ci_as null constraint df_votemaster_image default (apple.jpg), endtime datetime null, mode int null, constraint pk_votemaster primary key clustered ( id asc ) with (ignore_dup_key = off) on primary ) on primary 4.创建投票选项表的sql脚本如下: create table dbo.voetdetails( votedetailsid int identity(1,1) not null, 张敏娟:苹果投票系统 10 voteitem char(40) collate chinese_prc_ci_as not null, votenum int not null constraint df_voetdetails_votenum default (0),id int not null, constraint pk_voetdetails primary key clustered ( votedetailsid asc ) with (ignore_dup_key = off) on primary ) on primary 3.5 数据表设计 1.管理员表(admin) 表 3.1 管理员表 标识数据类型数据范围备注 idint4管理员 id,主键,自增长 namevarchar20管理员用户名 pswint4登录密码 telvarchar20联系电话 2.客户表(gest) 表 3.2 客户表 标识数据类型数据范围备注 namevarchar40客户用户名,主键 pswvarchar20客户登录密码 emailvarchar40客户联系邮箱 telephonevarchar20客户联系电话 personalnetvarchar50个人网站 3.留言表(leave word) 表 3.3 留言表 标识数据类型数据范围备注 namevarchar20留言者姓名 contentvarchar50留言内容 张敏娟:苹果投票系统 11 timedatetime8留言时间 4.新闻表(newnrb) 表 3.4 新闻表 标识数据类型数据范围备注 idint4自增长,主键 biaotivarchar30新闻标题 shijianvarchar8更新时间 neirongvarchar50新闻内容 imgvarchar20图片 clickint4点击人数 writervarchar20描述 5.新闻类别表(newtypes) 表 3.5 新闻类别表 标识数据类型数据范围备注 idint4自动生成 主键 typenamevarchar40投票选项 6.投票选项表(votedetails) 表 3.6 投票选项表 标识数据类型数据范围备注 votedetailsidint4自动生成 voteitemvarchar40投票选项 votenumint4选项票数 idint4 投票标题 外键(vote title) 7.系统配置(voteconfig) 3.7 系统配置表 标识数据类型数据范围备注 idint4 标题 id 自增长 张敏娟:苹果投票系统 12 checkipint4 1 为不限制 ip 0 为限制 ip checktimeint4 限制投票时间间隔, 默认值为 0 8.投票标题表(votemaster) 3.8 投票标题标 标识数据类型数据范围备注 idint4主键 自增长 votetitlevarchar30投票标题 votesumint4总投票数 imagevarchar20图片,可以为空 endtimedatetime8投票结束时间 modebit1 1 表示单选模式 0 表示多选模式 9.投票人员表(voter) 表 3.9 投票人员表 标识数据类型数据范围备注 idint4 主键,外键 (votemasters) ipvarchar80投票者 ip,主键 votetimedatetime8投票时间 votenumint4投票总数 张敏娟:苹果投票系统 13 第 4 章 系统概要设计 本章节主要对系统的总体流程做出介绍。通过阅读该章节,读者可以明白该系统中, 各个模块的分类,以及各模块的大概功能,在系统中起到的作用等。本章节是对该系统 的一个整体介绍。可以让读者对本系统有一个大体了解。 4.1 系统组成模块 该系统主要由以下六个模块组成:登录注册模块,管理员模块,客户模块,留言簿 模块,新闻模块,投票模块。如图 4.1 所示: 苹果投票系统 登 录 注 册 模 块 管 理 员 模 块 客 户 模 块 留 言 簿 模 块 新 闻 模 块 投 票 模 块 图 4.1 系统主要模块图 4.1.1 客户模块 客户模块主要是添加投票项信息的,比如投票项目题目,选项以及系统配置要求。 4.1.2 新闻模块 新闻模块主要是一些关于本系统的新闻信息,其中包括新闻显示和添加删除模块。 如图 4.2 所示: 新闻模块 新闻显示 添加新闻 删除新闻 图 4.2 新闻模块图 张敏娟:苹果投票系统 14 4.1.3 留言薄模块 留言簿模块主要是投票者对于本系统提出问题,或单纯留言。管理员可以对用户留 言进行回复。 4.1.4 管理员模块 管理员模块是指管理员对项目进行的管理模块,包括项目的管理,选项的管理,新 闻的管理以及系统设计的管理。可以对项目进行删除和修改,对选项进行删除、更新和 添加,对新闻进行添加、修改和删除操作,以及对系统配置进行删除和更新的功能。 4.1.5 登录注册模块 登录注册主要为管理员和客户进入相应页面的桥梁。不同的身份拥有不同的权限。 这里面使用到身份验证的功能。当用户不是系统合法用户的时候,用户可以进行注册然 后登录系统。 4.1.6 投票模块 该模块用户可以对具体的项目进行投票。该模块分为多选投票模式和单选投票模式, 用户可以查看投票结果。如图 4.3 所示: 单 选 模 式 投 票 多 选 模 式 投 票 投票模块 结 果 显 示 图 4.3 投票模块图 4.2 系统流程图 苹果投票系统从运行开始有一套完整的操作过程,其流程主要分前台和后台的不同 操作。其主要流程如图 4.4 所示: 张敏娟:苹果投票系统 15 在线投票系统 前台用户界面 后台数据库管理 投票 选择项目 单选模式 选择选项 ip 允 许 时间允 许 限制 ip 投票 留言版 新闻中心 登陆界面 选择身份 输入信息 提交信息 管理员 提 交 项 目 信 息 管理系统配置 管理投票项目 删除投票 选项 更 新 编 辑 删 除 管理选项 添 加 更 新 有投票选项 删 除 y n 登录成功 y n n y y n n n y y 图 4.4 苹果投票系统流程图 张敏娟:苹果投票系统 16 第 5 章 系统详细设计 本章节详细介绍了苹果投票系统的各个主要模块,包括模块的功能、实现方式以及 界面设计等。通过对该章节的阅读,读者可以知道系统的各个模块细节,对该投票系统 的具体设计有一个深入全面的了解。 5.1 登陆注册模块 5.1.1 功能描述 管理员和客户登录界面,要求用户填写一些基本的信息,根据选择身份类型的不同, 验证身份,如果验证通过,则跳转到的相应页面。如果用户还未注册,应点击注册按钮, 进入注册页面。 其中该模块流程如图 5.1 所示: 登陆基本信息 系统登录处理登录结果 输入处理输出 图 5.1 登录模块流程图 其中该模块的相应信息如图 5.1 所示: 图 5.2 登录模块信息输入流程图 5.1.2 界面设计 登录界面要求用户输入用户名、密码、验证码,要求选择正确的身份类型。当用户 填写完信息后,点击【登陆】按钮,系统会根据用户的身份,做出判断,跳转到相应的 页面。如果用户还不是系统的合法用户,应先点击【注册】进行注册。 苹果系统登录界面的设计如图 5.3 所示: 1.会员注册信息表 单 2.重新输入密码 输入 1.会员注册 2.密码修改 1.注册结果信息表 单 2.成功修改信息 处理输出 张敏娟:苹果投票系统 17 图 5.3 苹果系统登录界面图 5.1.3 数据流 该功能的数据流图如图 5.4 所示: 数据库 登陆信 息 身份信 息 管理员模块或 客户模块 登陆模块 图 5.4 登录功能数据流图 5.2 投票模块 5.2.1 功能描述 在投票模块,用户可以选择具体的投票项目,根据用户选择的项目模式不同,会自 动跳转到相应的投票页面,用户可以进行投票。投票过程中,程序会对系统配置进行检 测,判断并约束用户在某段时间内的投票次数,同时,用户可以查询该项目的投票结果。 其中,该模块的流程图如图 5.5 所示: 张敏娟:苹果投票系统 18 1.投票项目信 息 2.选项信息 1.模式判断 2.系统配置检测 3.数据库信息更新 1.返回投票信息 输出输入处理 图 5.5 投票模块流程图 5.2.2 界面设计 投票模块分为多选投票模式和单选投票模式。在多选投票模式中,用户可以选中其 中一项进行投票。单选模块,用户则进行直接投票,表示支持投票项观点。其中多选投 票模式界面如图 5.6 所示,其中多选投票模式界面如图 5.6 所示。 图 5.6 多选投票模式界面 单选模式的投票界面图,如图 5.7 所示: 张敏娟:苹果投票系统 19 图 5.7 单选投票模式界面图 投票结果显示界面如图 5.8 所示: 图 5.8 投票结果显示界面图 5.3 新闻模块 5.3.1 功能描述 新闻模块主要是一些关于本系统的新闻信息,其中包括新闻的显示功能,和添加、 删除功能等。用户可以根据自己的需要,进行新闻发布,其中新闻的类别没有限制,这 样使用户使用起来更加方便、舒适。 其中,该模块的流程图如图 5.7 所示: 张敏娟:苹果投票系统 20 输入 1 新闻信息 2.操作信息 1.数据库更新 处理输出 1.返回操作结果 图 5.7 新闻模块的流程图 5.3.2 界面设计 该模块的初始显示界面设计如图 5.8 所示: 图 5.8 新闻模块界面图 点击查看后的详细信息界面如图 5.9 所示: 张敏娟:苹果投票系统 21 图 5.9 新闻详细信息界面图 新闻添加页面的界面设计如图 5.10 所示: 图 5.10 新闻添加页面界面图 张敏娟:苹果投票系统 22 5.4 留言簿模块 5.4.1 功能描述 留言簿模块主要是针对用户留言提供模块,用户可以对投票项进行评论,也可以直 接留言,其中本系统的管理员可以对用户的留言进行回复,或者删除功能。管理员有权 屏蔽一些对网站不利或者不文明的留言。 该模块流程图如图 5.11 所示: 1.留言基本信息 2.回复信息 输入 1.数据库更新1.返回结果 处理输出 图 5.11 留言簿模块流程图 5.4.2 界面设计 留言簿模块的留言查看界面设计如图 5.12 所示: 张敏娟:苹果投票系统 23 图 5.12 留言查看模块界面图 留言簿模块的留言模块界面如图 5.13 所示: 图 5.13 留言簿留言模块界面图 5.5 管理员模块 5.5.1 功能描述 该模块主要功能是实现对本系统的后台维护,对项目的信息的管理,如项目的基本 信息,系统配置信息的操作等等。该模块实现了系统与数据库进行交互的功能。管理员 可以对该网站信息进行操作管理,屏蔽、删除一些恶意或过期信息。也可以进行信息的 添加,管理。该模块和其他模块都有密切的关系,其他模块的信息全部提交到该模块进 行处理。该模块是本系统的核心模块。 该模块的流程图如图 5.14 所示: 1.项目信息 2.选项信息 3.配置信息 输入 1.数据库更新1.返回操作信息 处理输出 图 5.14 管理员模块流程图 张敏娟:苹果投票系统 24 5.5.2 界面设计 管理员模块的界面设计如图 5.15 所示: 图 5.15 管理员模块界面设计图 5.6 客户模块 5.6.1 功能描述 客户模块的功能是客户添加项目信息包括项目题目,选择投票模式和系统配置。并 且根据所选模式对选项进行添加。 5.6.2 界面设计 客户模块的界面设计图如图 5.14 所示: 张敏娟:苹果投票系统 25 图 5.14 客户模块界面图 张敏娟:苹果投票系统 26 第 6 章 编码测试 本章节主要包括了一些该系统中,主要的功能,及其实现该功能的主要代码。以及 对后来对该系统进行的测试运行结果进行了简单介绍。本章节只对该系统的主要功能作 演示,附带主要源码,具体实现细节,请查看源程序。 6.1 登录模块 用户登录系统时,选择不同身份进行登陆,跳转到响应页面,如果该用户为未注册 用户,则提示相应提示信息,用户名或密码错误不存在等。 6.1.1 编码 1相应源代码如下: if (this.radiobutton1.checked)/第一个按钮响应 /管理员身份 string strsql = “select count(*) from admin where name=name and psw=psw“; int b = convert.toint32(db.executegetreturn(strsql); if (b = 0) response.write(“ alert(用户名和密码错误!)“); else if (textbox3.text = session“checkcode“.tostring() response.redirect(“delete.aspx?admin=“+this.textbox1.text.tostring(); else response.write(“ alert(验证码错误,请重新输入验证码!) “); 张敏娟:苹果投票系统 27 if (this.radiobutton2.checked) /客户身份 string str = “select count(*) from guest where name=name and psw=psw“; int b = convert.toint32(db.executegetreturn(str); if (b = 0) response.write(“ alert(用户名和密码错误!)“); else if (textbox3.text = session“checkcode“.tostring() response.redirect(“guest.aspx?guest=“+this.textbox1.text.tostring(); else response.write(“ alert(验证码错误,请重新输入验证码!) “); 6.1.2 测试 测试用例图如图 6.1 所示: check 模块check 内容输入条件期望结果测试次数测试结果 用户登录模块管理员登录管理员(xiaomi) 登录成功,转到管 理员页面。 10ok 用户登录模块管理员登录 非管理员 (xiaopeng) 登录不成功,停留 在该页 10ok 用户登录模块客户登录 注册客户 (dami) 登录成功,转到添 加投票项页面。 10ok 用户登录模块管理员登录 注册客户 (xiaomi) 登录不成功,停留 在该页 10ok 用户登录模块 未注册用户登 录 未注册客户 (safdsag) 登录不成功,停留 在该页 10ok 用户登录模块用户注册跳转到注册界面5ok 图 6.1 登录模块测试用例图 张敏娟:苹果投票系统 28 该功能经过测试,运行良好,达到预期效果,该功能完整实现。 6.2 用户投票模块 当用户进行投票时,需要对用户的 ip 和时间进行检测,判断用户是否可以进行投票, 如果是相同的 ip,在间隔很短的时间进进行重复投票是不允许的。 6.2.1 编码 1在本系统中,把该功能封装成一个方法,可以在每次需要判断的时候进行调用, 提高运行效率,同时减少代码重复,增强了程序的可读性。 以下是 ip 的检测判断代码: public bool isip() /检测是否已投过票 flag = false; string ip = request.servervariables.get(“remote_addr“).tostring(); string strsql = “select count(*) from voter where ip=“ + ip + “and id=“ +a; int c = convert.toint16(db.executegetreturn(strsql); if (c = 0) /此ip第一次对此项目投票 flag = true; else /此用户与针对此项目投过票 flag = false; return flag; 以下是时间的检测判断代码: public bool checktime() /检测投票时间是否合格 flag = false; string ip = request.servervariables.get(“remote_addr“).tostring(); 张敏娟:苹果投票系统 29 string strsql = “select datediff(s,votetime,getdate() from voter where ip=“ + ip + “and id=“ +a; string m = “select checktime from voteconfig where id=“ + a; long c = convert.toint64(db.executegetreturn(strsql); int b = convert.toint16(db.executegetreturn(m); if (c 0) this.label2.text=“留言成功!“; else this.label2.text=“留言成功!“; 6.4.2 测试 留言模块的测试用例图如图 6.4 所示: check 模块check 内容输入条件期望结果测试次数测试结果 留言模块留言内容合法字符串运行正常20ok 留言模块留言内容过长字符串提示错误20ok 留言模块恢复内容合法字符串运行正常20ok 留言模块回复内容过长字符串提示错误20ok 图 6.4 留言模块测试用例图 经测试,该模块功能,运行良好,达到预期效果。 张敏娟:苹果投票系统 36 第 7 章 结束语 时间如流水,岁月不停留。转眼之间,我们的实训生活就要结束了。而与之更早的 是我们的毕业的日子也逐步逼近。回想在青岛呆的这段时间,虽然时间不长,竟有种百 感交集的感觉。 记得刚开始来青岛的时候,我完全被青岛的美丽所折服。青岛实在是一个美丽的海 滨城市,这里的空气那么清新,风景那么漂亮,当地居民也很热情和善。当然我青岛给 我的感受现在也还未变。只是,可能出过远门的朋友们都会知道,即使再好的一个地方, 我们刚到的时候也总会感到不习惯。刚来青岛那段时间就是,日子过的很苦,每天除了 看到听到或者吃到一些新鲜的东西以外,我们一个有 16 个小时待在软件园里。而待在软 件园里,对我们来说就是说我们至少有 14 个小时,坐在椅子上对着电脑敲代码,效率并 不高,但是却实在鼓不起勇气出去玩耍。我们都是奔着一个目标来的,大家是朋友也是 对手,每个人都顶着很大的压力学习。由于我们学校给我们打下了良好的基础,所以我 在这里感觉压力相对来说没有那么大,但是,即使是这样,面临就业的压力,也一样让 我不能释怀。朋友老师亲人都曾问过我,这里怎么样,那时我的回答是很好。我用笑脸 回应了他们,而事实上,即使再好也总有不好的地方。来青岛也一样,毕竟远离了自己 的亲人朋友们,有时候不免有些孤单伤怀。 不过,这一切很快就过去了。时间过的很快,在我们快乐或痛苦,或者不经意的时 候,悄悄流走了。我渐渐的习惯了,习惯了一种生活状态,习惯了一种压力状态。老师 说的对,人在任何时候都是由压力的,只不过有时候会由于某种原因淡化这种感觉。我 不知道我是由于何种原因淡化了或者麻木了这种感觉。我现在并未找到工作,压力是肯 定有的,但是也许我学会了面对,觉得困难也不过如此,工作是迟早要找到的,只是时 间与际遇的问题。也许是我认识到了更新的东西,有的时候我们不该急于一时。机会很 多,遍地都是,关键是我们有去抓住的力气和勇气。 从郑州中原工学院里走出来,来到青岛,像是离开家的孩子,总是在某个不经意的 瞬间想起母校,想起那些常在身边的人。我来到青岛之后,总是深切的怀念我的老师同 学们,想着与他们之间的快与不快,所有的种种,都在思念中化作一股浓情
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 犬的繁殖技术
- 2025年工资成本员年度工作总结模版
- 信号分选技术
- 意识形态安全案例课件
- 保险信托培训课件
- 中医基础理论考试题库及答案(九)
- 零碳循环经济产业园项目可行性研究报告
- 病原生物与免疫学:病原生物与免疫疫苗接种知情同意课件
- 《GAT 2000.228-2018公安信息代码 第228部分:警犬毛色代码》专题研究报告
- 《GAT 515.1-2019公安交通指挥系统设计规范 第1部分:总则》专题研究报告
- 2026年陕西省森林资源管理局局属企业公开招聘工作人员备考题库及参考答案详解1套
- 承包团建烧烤合同范本
- 电力线通信技术
- 人工流产手术知情同意书
- 2025秋人教版七年级全一册信息科技期末测试卷(三套)
- 教师三笔字培训课件
- 钢铁烧结机脱硫脱硝施工方案
- 中国医药行业中间体出口全景分析:破解政策难题深挖全球红利
- 英语A级常用词汇
- RoHS培训资料课件
- 协调控制系统
评论
0/150
提交评论