1、 教学软件 站内资料查询模块 登录模块:本模块设置有管理员登录和普通用户入口,用于分级管理。教学网站系统分为两种身份登录:教师和学生。登陆时首先选择身份,然后通过输入用户账号和密码进入相应的页面。不同身份登录实现不同的功能模块,主要是读写功能占很大区别。a) 教师空间的功能模块系统用户的一种身份是管理员,即教师,能够进行资源的管理,页面分模块浏览和站内资源查询功能。b) 学生空间的功能模块系统用户的另一种身份是学生,即普通用户。学生登录网站主要是针对任课教师发布的资源进行浏览、查询(下载)。1.2数据流图顶级数据流图一级数据流图二级数据流图资源上传:资源查询: 二、 系统设计2.1实现编译平台
2、和运行平台介绍VBScript是Visual Basic Script的简称,即 Visual Basic ,是asp动态网页默认的编程语言,配合asp内建对象和ADO对象。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。用于调试简单的VB语句非常方便。其优点是:由于VBScript由网页浏览器解释执行,不需要增大服务器的负担。数据库连接采用的是 ADODB 的方式,对于数据库的操作都用编程的方式实现。本系统在操作中运用了事务处理的方法,对于被意外终止的操作进行回滚操作,比如说用户在删除数据的时候在对数据库的更新过程中遇到障碍,数据会被恢复到没提交前的状态,保持了
3、数据库的完整性。在编程的过程中采用了对数据库进行直接操作的形式,增加了程序的灵活性,比方对数据库进行更新和查询的程序采用建立数据库连接对象(Connection)和记录集(Recordset)并对其进行直接操作的方式。2.2功能模块图:2.3 数据库设计2.3.1数据库的概念设计E-R图1)用户登录子模块:2)用户-资源交互子模块:2.3.2 数据库的逻辑设计将E-R图转换为关系模式。1)Users(Sloginname,password,typeid)2)Type(type , typeid)类型表:实现资源类别管理,有利于实现资源类型的添加、修改和删除。3)Source(typeid,ti
4、tle,titleid,site,fsize,dateandtimes,downloadtimes,descriptions)资源表:实现资源管理,有利于实现资源的添加、修改和删除。(单下划线标注的属性为主码,双下划线加亮显示部分为外码)2.3.3数据库的逻辑设计生成关系模式图:2.3.4数据库中各表结构的设计,形式如下:Users(用户表)字段名含义数据类型长度空值情况主键或索引约束条件Id用户编号Int4主键Sloginname用户名Varchar20password密码Typeid赋予权限可为空 Type(资源类型表)类型编号varchar10Type类型名称唯一值Source(资源表)
5、Tltleid标题编号Title标题80外键,引用了Type表中的type字段Site资源地址100Fsize资源大小缺省值为未知descriptions简介缺省值为:无dateandtime上传时间Smalldatetimegetdate()Editor作者downloadtimes下载次数缺省值为0users表:type表:Source表:2.3.5关系模式的规范化users表,type表,source表关系中的没一个属性都是不可再分的简单项,符合第一范式。users表,type表,source表的关系键均为单主属性,即不存在非主属性对主关系键的部分函数依赖,符合第二范式。users表,t
6、ype表,source表中,每个非主属性都不传递函数依赖于个表的主关系键,符合第三范式。在users表中,仅存在一个候选键即为主键Sloginname;source表中,在允许重名的情况下,也只有titleid可以作为候选码;type表中,但由于是但主属性,也不存在主属性对将的部分函数依赖和传递函数依赖。三、 技术方案 详细设计1)登陆模块Admin.asp(登陆模块) Sadmin.asp(在此登陆模块)a) 在Admin.asp页面和Sadmin.asp页面中,管理员用户需要填写的HTML表单元素名称表单元素类型最大长度text管理员登陆名管理员密码b) 页面中所涉及到的数据库表信息此页使
7、用了users表。特别说明的是在教师登陆中,包含了三级检验,即用户名、密码和权限。权限值由表中的typeid赋予,若typeid为空,则不具备权限。因此在数据库中必须要为管理员的typeid赋值,即赋予了权限。c) 页面代码分析信息匹配部分代码:If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then Session(MM_Username) = MM_valUsername If (MM_fldUserAuthorization ) ThenMM_UserAuthorization) = CStr(MM_rsUser.Fields.Item(MM_fldU
8、serAuthorization).Value) Else) = End If if CStr(Request.QueryString(accessdenied) And false Then MM_redirectLoginSuccess = Request.QueryString() MM_rsUser.Close Response.Redirect(MM_redirectLoginSuccess) Response.Redirect(MM_redirectLoginFailed)End If首先判断用户名对象中包含记录,进行传值;判断其是否具有权限,若无,结束响应。最后匹配成功,跳转至管
9、理员页面,否则,跳转至再次登陆页面。2)信息分类显示index.asp和adindex.aspclass.asp class1.asp class2.asp class3.asp class4.asp class5.aspa) 在这一系列信息显示分类模块中,采用了超链接方式,无需用户填写的HTML表单元素。信息显示分类模块中用到了type表和source表利用了source表的typeid进行了信息的分类显示,且source表中的typeid必须与type表中的typeid相一致,由type表进行资源类型的统一管理。另外利用source表显示资源的详细信息。以class1.asp为例利用sel
10、ect语句查询数据库的相关信息SELECT titleid, title, dbo.source.typeid, site, fsize, descriptions, dateandtime, editor, downloadtimes, type FROM dbo.source, dbo.type WHERE dbo.source.typeid=dbo.type.typeid and dbo.source.typeid = 1 ORDER BY dateandtime DESC在source表中查询typeid = 1的所有资源的详细信息,利用等值连接在type表中查询出type.typei
11、d=source.typeid的资源的type属性字段。3)资源查询queryresult.aspa) 在教师首页和学生首页上,分别都有资源查询模块,用户需要填写的HTML表单元素names要查询的相关内容50在index.asp和adindex.asp页面上仅是数据的输入和接收,尚未涉及到数据库的操作。在queryresult.asp页面中,连接数据库中的source表。这里的查询做的比较简单,是将输入的字段与source表中的descriptions字段做比较。查询出匹配信息。queryresult.asp页面:首先进行传值,将上一个页面中的表单所接受到的信息赋给变量names,names
12、= Request.Form(names) 利用数据源的方式连接数据库: Set conn = Server.CreateObject(ADODB.Connection conn.Open DB,sa ,SQL2000创建记录集: set RS=Server.createobject(ADODB.Recordset在source表的descriptions字段进行匹配查询,并保存在记录集内: sql = select * from source where descriptions like % & names &% rs.open sql,conn最后输出相应资源的属性信息。4)资源添加 freeadd.aspadminsave.aspaddnew.aspfreeadd.asp为添加资源的表单,adminsave.asp对freeadd.asp的表单信息进行检查和显示
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1