搜档网
当前位置:搜档网 › 基于ASP网上收费系统的设计与实现毕业设计

基于ASP网上收费系统的设计与实现毕业设计

基于ASP网上收费系统的设计与实现

摘要

基于ASP网上收费系统是近年来随着网络技术、计算机技术、信息数字化技术、图形影像处理技术的快速发展而出现的。而在线电影收费系统不仅能对电影收看进行收费,通过对数据库的调用使系统管理员对当今最热门的电影进行及时发布,设置和修改工作人员权限,修改管理标准,而且工作人员也可以对新影片进行整理编辑。这样使管理工作变得精确而有序,并且节省了大量人力物力,充分体现了网络信息化管理的优越性。

本论文首先提出了在线电影收费的优点,分析了国内在线电影收费系统的应用现状,针对现在网上在线电影收费系统应用存在的不足,提出了更有安全方便有效的在线电影收费系统。并根据系统需求,对系统框架、功能模块和数据库结构进行了详细规划。

关键词:在线收费;信息安全;数据流

Based on ASP online charging system design and

implementation

Abstract

Based on ASP online fee system is in recent years as the network technology, computer technology and information technology, digital image processing technology of graphics and rapid development. While charging system can not only online movie to watch movie, based on database charge system administrators to call the hottest movie today, and modify permissions, revision management staff and workers of the new film can rearrange editor. So make management becomes precise and orderly, and save a lot of human resources, fully embodies the advantages of network information management.

This paper firstly put forward the advantages of online movie fee, this paper analyses the application fee system online movies, for now online movie fee system application deficiency, puts forward more convenient and effective security charge system, online movies. According to the demand of system, the system framework and function module and database structure carried on the detailed planning.

Key words: online charge;Information security;Data flow

目录

第1章绪论 (1)

1.1选题来源 (1)

1.2选题目的 (1)

1.3选题意义 (1)

1.4本设计的指导思想 (2)

第2章系统设计分析 (3)

2.1需求分析 (3)

2.2 系统功能分析 (3)

2.3 数据的需求分析 (4)

第3章概要设计 (6)

3.1系统功能结构概念设计 (6)

3.2数据库概念结构设计 (7)

第4章详细设计与系统实现 (9)

4.1数据库的设计 (9)

4.1.1 创建数据库 (9)

4.1.2 创建表和字段 (9)

4.2系统总体流程设计 (10)

4.3详细设计及实现 (12)

4.3.1 数据库连接 (12)

4.3.2 身份及权限验证登录模块 (12)

4.3.3 用户收费模块 (20)

4.3.4 密码修改模块 (22)

4.3.5 系统维护模块 (23)

第5章软件测试 (23)

5.1单元测试 (23)

5.1.1 登录模块测试 (24)

5.1.2在线收费模块测试 (24)

5.2系统测试 (25)

5.3结果分析 (26)

结论 (27)

参考文献 (28)

谢辞 (29)

第1章绪论

1.1 选题来源

随着我国经济的持续高速发展和改革开放程度的不断深入,各类企业以迅猛之势发展起来。为了适应快速发展的形式需要,企业的信息化运做也显得空前重要。好的企业信息化管理必将带好的效益,尤其是日新月异的今天。

在线电影收费系统不仅能对电影收看进行收费,通过对数据库的调用使系统管理员对当今最热门的电影进行及时发布,设置和修改工作人员权限,修改管理标准,而且工作人员也可以对新影片进行整理编辑。这样使管理工作变得精确而有序,并且节省了大量人力物力,充分体现了网络信息化管理的优越性。

因此,设计一个在线电影收费系统,使对收看电影的收费系统化、规范化、智能化和网络化就显的很重要了。所以在本次毕业设计中我选择了“网上收费系统”这个题目进行设计。

1.2 选题目的

计算机技术、网络技术、多媒体技术的成熟与发展,为在线收看电影收费强化版权意识提供了强有力的技术支持。随着经济社会的高速发展,盗版现象呈现不可控制的局面,盗版现象的出现给原创带来了不可估量的精神上和经济上的巨大损失,因此在线电影收费系统的开发对这一现象的防治有很大的帮助,对维护正版和版权有着积极的影响。

理论联系实际,是对所学知识有更新认识和体会的唯一方法。为了对大学三年所学知识的做一次综合性运用,培养自己的设计能力,增强自己的动手能力,使自己的综合素质得到提高,能够和社会顺利接轨。也为了企业的实际管理需要,我选择了本题目。

1.3 选题意义

随着IT技术的飞速发展,所有行业的管理都实现了IT化、信息化、科学化。企业化运营的电影网站更是不能例外。电影网站对各项管理实行信息化管理,以提高管理水平和工作效率,同时也最大限度地减少手工操作带来的错误。

在线电影收费系统能够方便电影网站的科学管理,是一套基于B/S模式的系统。系统开发的整体任务是实现在线电影收费的系统化、规范化、自动化和智能化,从而达到提高在线电影收费效率的目的。

1.4 本设计的指导思想

ASP是一种简单易用、完全面向对象、有平台无关性、安全可靠的、主要面向Internet的开发工具。充分利用当前流行的ASP程序设计技术作为指导思想,把在线电影收费系统打造成系统化、规范化、自动化和智能化的系统。围绕实现这个目标,开发设计必须突出坚持收费与技术手段相结合以内容为主的主体性要求。

综合使用ASP开发技术。另外运用微软公司的Access数据库,进行了较深入的学习和应用,以此来解决本设计的需求分析及各功能模块的划分及完成。

由于本设计涉及到的知识面范围较宽,包括动态页面设计、数据库设计等,而且时间比较紧迫等因素,所以最终决定将本设计的开发重点放在前端服务模块,后台管理员操作管理,力争在有限的时间内完成这些功能的实现。

第2章系统设计分析

2.1 需求分析

本系统的开发宗旨,以及总体任务就是要实现在线电影收费的自动化、规范化和系统化。所以为了能够实现编制这个网站所设定的目标,在程序的开发之前,需求分析必不可少。

需求分析是介于系统分析和网站设计阶段之间的重要桥梁。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从网站角度对它们行检查与调整;另一方面,需求规格说明又是网站设计、实现、测试直至维护的主要基础。良好的分析活动有助于避免或尽早剔除早期错误,从而提高网站生产率,降低开发成本,改进网站质量。

本系统主要为系统使用者:普通服务人员及管理人员提供相应服务,以及与此相关的信息服务。例如服务人员为用户进行充值,管理人员对新影片进行整理编辑,用户在线观看影片进行付费,等等。

2.2 系统功能分析

由于业务的需要和保密性,也为了便于管理,用户按权限应分为两种:普通管理人员和高级管理人员。

从整体上看,系统应两大模块:一个是前台用户操作模块;另一个是后台管理操作模块。

对于前台用户操作模块,普通用户在登录后拥有查看个人信息、修改个人资料、用户续费、查看消费记录等功能。其中用户续费模块又分为计点会员和包月会员两种类型,每种会员类型都有两种付费类型,在线支付和银行卡支付。除此之外前台用户操作模块还具有新用户注册的功能。

对于后台管理操作模块,高级管理人员登录后可查询审核前台的服务付费记录。能对新上映的一些影片进行整理编辑,以及对不同的电影点播的收费情况进行设定,编辑电影的收费模式,收费记录的查看。另外,和前台操作的普通用户一样,拥有密码修改及注销操作。

另外,系统需要一个身份及权限验证模块。通过该模块,系统可验证所登录用户的身份以及权限。判断用户是前台普通用户操作模块用户,还是后台高级管理操

作模块用户。

2.3 数据的需求分析

在线电影收费系统是由数据流和一系列的转换构成的,而这些转换将输入数据流变换为输出数据流。数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分别表示数据流、转换、数据源以及外部实体。它提供了层次结构,让分析人员能够方便地表示任意抽象级管理系统和其子系统,并支持问题分解、逐步求精的分析方法。本系统的顶级数据流图和一级数据流图如下:

1.顶级数据流图

图2.1顶级数据流图

2.一级数据流图

图2.2 一级数据流图

第3章概要设计

3.1 系统功能结构概念设计

根据大型商场管理的业务流程,我们可以把系统分为三大模块:身份及权限验证模块、前台服务操作模块和后台高级管理操作模块。用户可以分为两类:前台服务人员和后台高级管理人员。

前台服务人员用户只有的四个模块七个功能,而后台高级管理人员用户则有五个模块七个功能。

(1)身份及权限验证模块,登录系统需验证用户和密码,确认存在并且正确后,系统将根据用户的权限进入相应的功能界面。

(2)前台服务操作模块中,分为用户资料模块、用户查询模块、用户续费模块及一个注销小模块。其中用户资料模块主要是修改和查询自己的基本资料,用户查询模块主要是查询用户的消费记录、消费信息,用户续费模块主要是对用户的基本消费进行续费。

注销模块:注销登录,退出本系统,结束工作状态。

(3)后台管理操作模块中,分为审核用户计费管理模块、整理编辑影片模块、查看用户消费记录模块,还有一个注销小模块。

审核用户计费管理模块:查看并审核交易业务记录,实现监察在线收费系统的经营状态。

整理编辑影片模块:整理新上映的各种类型的影片,进行逐个的编辑,主要是对影片的名字、类型、格式、资料、题材等方面。还有对每个影片在线收看收取的费用的制定。

查看用户消费记录模块:该模块主要是进入后台管理模式查看不同用户的在线观看电影的消费记录和统计。

以下是在线电影收费系统的逻辑图。

3.2 数据库概念结构设计

数据库设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。

通过需求分析,可以得到系统的主要实体以及他们之间的关系如下E-R图所示

图3.2 E-R图

关系模型的逻辑结构是一组关系模式的集合,E-R图则是由实体、实体的属性和实体间的连续三要素组成的。将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,根据转换的一般原则,与这部分E-R 图对应的关系模式为:

用户(用户编号,用户账号,用户密码,用户姓名,支付手段,用户余额,用户性别,邮箱,用户类型,用户金额)

电影(电影编号,电影名称,电影主演,电影类型,故事情节,电影产地,点播费用,电影时长)

收费记录单(收费流水号,收费时间,收费电影编号,收费金额)

第4章详细设计与系统实现

4.1 数据库的设计

4.1.1 创建数据库

点击新建Microsoft Access数据库,命名为“在线电影收费系统”在“对象”中点击“使用设计器创建表”然后逐个保存。

4.1.2 创建表和字段

在这个系统中要建立3张表,分别是用户信息表、电影信息表收费费记录表。

用户信息表:用户信息表用来记录用户信息详细资料,如表4.1所示:

表4.1 用户信息表(user)

电影信息表:电影信息表用来记录电影详细信息资料,如表4.2所示:

收费记录表:收费记录表用来记录用户收看电影付费的详细数据,如表4.3所示:

4.2 系统总体流程设计

系统的总体流程图为:

图4.1 系统流程图

4.3 详细设计及实现

4.3.1 数据库连接

考虑到代码的重用性与维护的方便性,本系统采用ASP的文件包含语法,将数据库连接代码单独放在一个文件中,在需要使用的时候,只要通过文件名调用即可。包含文件语法:。运用了此方法后,使系统模块化,便于修改和维护。

在本系统中,我们将数据库连接文件定义为:conn.asp,代码如下:

<%

dim conn

dim connstr

connstr="DBQ="+server.mappath("../data/mayi.asp")+";DefaultDir=;DRIVER={ Microsoft Access Driver (*.mdb)};"

set conn=server.createobject("ADODB.CONNECTION")

conn.open connstr %>

4.3.2 身份及权限验证登录模块

当用户为一般用户时,首先在会员区区域登录,如图,代码如下:

<%function makePassword(byVal maxLen)

Dim strNewPass

Dim whatsNext, upper, lower, intCounter

Randomize

For intCounter = 1 To maxLen

whatsNext = Int((1 - 0 + 1) * Rnd + 0)

If whatsNext = 0 Then

'“character

upper = 90

lower = 65

Else

upper = 57

lower = 48

End If

strNewPass = strNewPass & Chr(Int((upper - lower + 1) * Rnd + lower))

Next

makePassword = strNewPass

end function

%>

<%

dim rs

dim sql

sql="select time from home"

Set rs= Server.CreateObject("ADODB.Recordset")

rs.open sql,conn,1,1

maxtime=rs("time")

conn.Execute("Delete From online where DATEDIFF('s',lastime, now()) > "&maxTime&"*60") '删除超时的用户

userid=replace(trim(request("userid")), "'", "''")

password=replace(trim(Request("password")), "'", "''")

password=md5(password)

sql="select * from users where userid='"&userid&"'and password='"&password&"'"

set rs=server.createobject("adodb.recordset")

rs.open sql,conn,1,3

if rs.bof and rs.eof then

response.write""

response.end

end if

if trim(request("validateCode"))<>trim(session("verifycode")) then

response.write""

Response.End

end if

Dim userip ' 数据库中当前登陆用户名保存的ip

Dim lastime ' 数据库中当前登陆用户名保存的最后刷新网页的时间,是计算用户是否在线的重要数据。

Dim userip1 ' 记录当前用户登陆ip,用来区分是否为同一用户的标示

userip1=Request.ServerVariables("REMOTE_ADDR")'取得提交登陆信息用户的IP

Set ts=Conn.execute("Select * FROM online WHERE username='"& userid & "'") if not ts.eof then ' 查询数据库是否有此用户的登陆过的信息

lastime=ts("lastime")

userip=ts("userip")

else

'如果数据库没有次登陆用户纪录则执行下面的语句

Dim ls

if rs("oklook")=0 then

oklook="电影游客"

elseif rs("oklook")=1 then

oklook="普通会员"

elseif rs("oklook")=2 then

oklook="白银会员"

elseif rs("oklook")=3 then

oklook="黄金会员"

elseif rs("oklook")=4 then

oklook="钻石会员"

end if

Set ls=Server.CreateObject("ADODB.RECORDSET")

ls.Open"Select * From online",CONN,2,2

ls.ADDNEW

ls("username")=userid

ls("userip")=userip1

ls("lastime")=now()

ls("grad")=oklook

ls("times")=rs("nos")

ls("name")=rs("name")

ls.UPDATE

ls.Close

Set ls=Nothing

end if

if userip<>userip1 and DateDiff("s",Lastime,now()) < maxTime*60 then

'上句判断如果提交登陆用户ip不是数据库中最后纪录的用户ip并且

'用户的最后活动时间和当前时间相隔并没超过规定的秒数则确认此用户当前在线

response.write""

response.write""

response.end

else

id=rs("ID")

dim radpass

radpass=makePassword(6)

' userip=Request.ServerVariables("REMOTE_ADDR")

conn.Execute("update users set nos=nos+1, login='"&radpass&"' where id="&id) response.cookies("userid")=rs("userid")

response.cookies("password")=rs("password")

'response.cookies("userip")=userip

response.cookies("login")=radpass

response.cookies("okerer")="yesok"

'application(""&userid&"")="yes"

response.cookies("myter")="yes"

response.cookies("userid").expires=now()+5

end if

rs.close

set rs=nothing

conn.close

set conn=nothing

response.redirect Request.ServerVariables("HTTP_REFERER")

%>

登陆成功如下图所示:

如果不是会员要先进行申请,点击“新用户注册”随后就进入了新会员注册主界面客户应安照界面上的提示填写相关信息,如“用户名”,“真实姓名”,“密码”,代码如下:

function formcheck()

{

相关主题