1、1图书管理系统设计摘 要随着人类社会的发展,人类对知识的需求也不断地增长。如何获取信息?图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来。迫使人们起用新的管理方法来管理图书,如何把图书管理员从繁重的工作中解脱出来呢?科学技术日新月异的进步,让人类生活发生了巨大的变化,计算机技术的飞速发展,使各行各业在计算机技术应用方面得到了广泛的普及和使用。信息化时代的到来成为不可抗拒的潮流,人类文明正在进入一个崭新的时代。因此,图书管理系统也以方便、快捷、费用低的优点正慢慢地进入人们的生活,将传统的图书管理方式彻底的解脱出来,提高效率,减轻工人人员以往繁忙
2、的工作,减小出错的概率,使读者可以花更多的时间在选择书和看书上。从而使人们有更多时间来获取信息、了解信息、掌握信息 。关键字:ASP 图书 数据库 2引 言网站(Website)是指在因特网上,根据一定的规则,使用 HTML 等工具制作的用于展示特定内容的相关网页的集合。简单地说,网站是一种通讯工具,就像布告栏一样,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。在因特网的早期,网站还只能保存单纯的文本。经过几年的发展,当万维网出现之后,图像、声音、动画、视频,甚至 3D 技术开始在因特网上流行起
3、来,网站也慢慢地发展成我们现在看到的图文并茂的样子。通过动态网页技术,用户也可以与其他用户或者网站管理者进行交流。也有一些网站提供电子邮件服务。许多公司都拥有自己的网站,他们利用网站来进行宣传、产品资讯发布、招聘等等。随著网页制作技术的流行,很多个人也开始制作个人主页,这些通常是制作者用来自我介绍、展现个性的地方。图书管理系统促进了信息的传播,利用及再生产的增殖能力,人们掌握了信息,使之转变为技术,成为作用于社会经济的生产力,促进了社会经济的发展,这就是信息管理服务的价值体现。为了能最大限度地发挥信息的效能,就离不开对信息的加工整理,离不开对信息的管理服务。因此,图书管理系统已成为 21 世纪
4、的主导发展机制之一。图书管理系统开发的总体目的是在图书信息管理中实现管理的系统化、自动化,减少工作量,增加效率及可靠性。本系统以中文版 Visual Basic 6.0 为前台开发工具,用 ACCESS 作为后台数3据库。Visual Basic 6.0,它是由美国微软公司推出的小型数据库开发语言,由于其使用方便,硬件要求不高,易学等特点,它还提供强有力的应用程序开发工具,为将来的维护提供必要的基础。第一章 编程环境基础知识1.1 ASP 的特点ASP 是一种未经编译的开放式的应用软件,是微软公司推出的一种用以取代 CGI(公共网关接口即 Common Gateway Interface)的技
5、术,它实质上是一种服务器端脚本环境。ASP 被包含在 IIS 3.0 及其更高版本之中。通过 ASP,用户可以结合 HTML 网页、ASP 指令和 ActiveX 组件建立动态、交互且高效的 Web服务器应用程序。ASP 的出现使用户不必担心客户端不能正确运行所编写的代码,因为所有的程序将在服务器端执行,包括所有内嵌的普通 HTML 中的脚本程序。客户端只要使用可执行 HTML 代码的浏览器,即可浏览通过 ASP 设计出来的页面内容。当程序执行完毕后,服务器仅将执行的结果返回给客户端浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。ASP 并不是一种纯粹的编程语言,它所用的语言是
6、大多数人都非常熟悉的两种脚本语言,即 VBScript 和 JavaScript 语言。在一个 ASP 应用程序中可以用其中一种脚本语言,也可以结合这两种语言使用。另外 ASP 还能与任何ActiveX Scripting 语言相兼容。ASP 使用的 ActiveX 技术是基于开放设计环境的,用户可以使用 Visual Basic、Java、等编程语言将自己定义和制作的组件加入其中,是自己的动态网页具有无限的扩充能力,这是传统的 CGI 等程序所远远不及的地方。另外,ASP可利用 ADO(Active Data Object,微软公司的一种数据访问模型)方便地访4问数据库,从而使得开发基于 W
7、WW 的应用系统成为可能。ASP 的编辑环境要求非常简单,任何一种文本编辑器都可以编写 ASP 应用程序。使用 ASP 开发网页应用程序具有以下一些特点:(1) 完全内嵌,与 HTML 和 Script 语言充分结合。(2)无需编译,容易编写,可在服务器端直接运行,且 Web 程序开发时间短。(3)无浏览器兼容问题。(4)程序代码隐藏,在客户端只能看到由 ASP 输出的动态 HTML 文件。(5)使用任何文本编辑器都可以进行编辑设计。(6)可使用任何语言编写自己的 ActiveX Server 组件。(7)使用 ADO 组件轻松存取数据。(8)面向对象,并可扩展的 ActiveX Server
8、 组件。一个以 ASP 为基础的应用程序包含了 Web 服务器的虚拟目录(Virtual Directory)以虚拟目录下的所有文件夹与执行文件。虚拟目录主要是为了保护服务器端站点的内容和资料,避免受到网络黑客的恶意破坏和攻击而产生的。在提供 WWW 服务的服务器端,虚拟目录的作用是不让客户端用户知道一些目录与重要文件的真实路径,也就是说每一个绝对路径(即真实路径)都已经隐藏起来,这些可以供网络客户访问的 Internet 资源都会以服务器的文档根目录(Document Root)作为相对路径的基点(Base) ,或者另取一个从表面上看来毫无关系的别名(Alias Name)来隐藏真实目录名称
9、。这些相对目录就称为虚拟目录,相对路径和绝对路径是相对立的。5另外,每个 ASP Web 应用程序都拥有一个 Global.asa 文件,后缀名 asa是 Active Server Application 的缩写。(1) ASP 文件的存取方式使用任何一种文本编辑器都可编写 ASP 应用程序,编写的程序要以后缀名.asp 保存,不可以保存为.html 形式。如果是以.html 形式保存的话,服务器端将不编译文件中所有的包含 ASP 语法的语句。将文件保存为后缀名.asp 的形式是为了告诉提供 ASP 服务的服务器,这是个 ASP 应用程序,必须在给客户端送出文件之前把它编译一遍。将.asp
10、后缀名的文件编写存储完毕之后,就可以把它放在自己的 Web 服务器上执行,这样就能够在浏览器端看到 ASP 页面的输出效果了。(2) ASP 文件的结构特点到目前为止,我们已经知道 ASP 能够和 HTML、Script 语言完美结合。在这之前一直都称开发的项目为应用程序,或许有些人认为 ASP 文件是一个已经被编译过的文件,但 ASP 文件是一个文本文件,可以用任何一种编辑器打开它,并对它进行适当的编辑修改。一般情况下一个 ASP 包含以下几个部分:(1)普通的 HTML 文件。(2)客户端的 Script 程序代码,放置于和标签之内。(3)服务器端的 ASP Script 程序代码,放置于
11、标签之内。(4)Server Side Include 语句,即使用#Include 的语法在本页面嵌入其他的Web 页面。ASP 的服务器会将其原封不动的发送到客户端,由客户端的浏览器进行处理。目前在 ASP 中可以使用的脚本语言主要是 VBScript 和 Jscript,其中系统默认的脚本语言为 VBScript。不过任何一个可以和 ActiveX Script 标准兼容6的脚本语言引擎都可以很好地应用于 ASP 之中。1.2 程序使用的对象及其属性和方法(1)Request 对象(从客户端获取信息,主要是读取提交表单中的数据)QueryString: 从查询字符串中读取用户提交的数据;
12、Form:获取客户端在 FORM 表单中所输入的信息;Cookies: 取得客户端浏览器的 Cookies 信息。(2)Response 对象(返回信息到客户端,主要是向浏览器输出文本、数据、Cookies 等)Response.Write: 直接送出信息到客户端;Response.Redirect: 引导客户端浏览器至新的 Web 页面;Response.End: 终止处理 ASP 程序,并返回当时的状况。(3)Session 对象(为单个用户保存信息)利用 Session 存储信息的语法:Session(”Session 名字” )=变量或字符串信息(4)Server 对象CreatObj
13、ect 方法: 用于创建组件、应用对象或脚本对象的实例CreatObject 的语法如下:Set Server.CreatObject(ActiveX Server 组件)(5)Connection 对象(ADO 的内部对象,用来建立与数据库的连接) 在 ADO 中建立对象一般要用 Server 对象的 CreatObject 方法,语法如下:7Set Connection 对象=Server.CreatObject (“ADODB.Connection”)Open 方法: 用于建立和数据库的连接;Close 方法: 用来关闭一个已打开的对象及其相关的各种对象;Execute 方法: 用来执行
14、数据库查询。(6)Command 对象(用来对数据库执行命令,如查询、添加记录等命令)Execute 方法: 用来执行数据库查询。(7)Recordset 对象(用来得到从数据库返回的记录集)建立 Recordset 对象的语法如下:Set Recordset 对象=Server.CreatObject(“ADODB. Recordset”)用 Open 方法打开数据库的语法如下:Recordset 对象.OpenSourse,ActiveConnection,CursorType,LockType,Options1.3 系统开发环境1.3.1 Web 服务器的选择要使自己的计算机成为 Web
15、 服务器就要安装相应的 Web 服务器软件。有许多的 Web 服务器可以用来建立 Windows 下的 Web 站点。但是不同的 Web 服务器支持不同的功能。选择 Web 服务器时,最重要的是使 Web 服务器易于建立和管理。其次选择服务器时应注意服务器提供的安全程序,如果 Web 站点只为浏览Web 站点的用户提供大量的信息,那么安全性问题并不十分重要,但如果要在网上提供重要信息时,应确保数据在传输之前进行加密,这时可以使用额一种安全机制进行传输。另外,Web 服务器必须支持 CGI 脚本(包括 ASP) 。通过提供动态内容和及时响应用户输入,CGI 脚本使得用户可以与服务器进行交互。8此
16、外 Web 服务器还应支持日志文件,这对于 Web 管理员及时了解站点的反问情况并做出相应的决策有帮助。1.3.2 IIS 简介IIS 是 Windows NT 提供的 Internet 服务的核心,Windows NT 的安装光盘上带有 IIS。IIS 是微软公司为企业和部门发布信息而设计的,一般用于大型的站点。IIS 5 是新一代的 Web 服务器软件,它包括许多新的特征:(1) ASP3.0 解释工具和 ASP 调试工具。(2) 功能强大的 Microsoft Management Console(是微软管理控制台) 、Microsoft Transaction Server 等管理工具
17、。(3) 对多 Web 站点(虚拟主机)支持。(4) 对 Web 站点内容完全控制。(5) Microsoft Index Server 微软高性能索引器。(6) HTTP1.1 和 HTTP 重定向支持。要特别注意的是服务器端的运行环境如下:(1) Windows 2000 + IIS5.0 (Internet 信息服务管理器 5.0)(2) Windows XP + IIS5.0 (Internet 信息服务管理器 5.0)(3) Windows 98 + PWS4.0 (personal Web Server 4.0,个人 Web 服务管理器)(4) Windows NT 4.0 + W
18、indows NT Option pack9第二章 需求分析21 功能需求随着校园规模的不断扩大,各行各业的需求,图书分类以成为必须,方便快捷的查找所需书籍在于图书分类的准确性,为此设计一个完整的图书管理系统,便于管理、查找、分类。(!)图书管理:图书管理为默认页,可进入主页和进行管理员的登录,对于新出版的图书在管理员未添加时用户可自行添加,但不可蓄意乱添。添完后会保存在浏览页中。只有管理员才可进行图书的修改与删除。主页中可进入图书浏览与论坛,可留言也可回复别的用户的留言,但不可删除留言。(2)图书查找:进入浏览页后,点击要查阅的图书名称可进行详细的查阅。(3)图书分类:图书按类别进行浏览,方
19、便查阅。(4)论坛留言:可发表自己的观点,管理员会应用户要求完善本系统。22 性能需求依据功能需求,系统开发的硬件环境cpu p4, 内存 512M, 硬盘 1GB软件环境Windows 2000Macromedia Dreamweaver MX10开发语言:VBScript 23 策划网站(1)网站内容客户端只可进行浏览,服务器端(管理员端)可进行图书添加、图书修改、图书的删除、图书浏览,管理员只有注册登录后才可执行以上操作,也可修改密码。论坛可供用户留言与回复留言,使之系统更加完善。系统层次概况图如下:客户端 服务器端图书修改 图书删除 图书浏览图书浏览图书添加 修改密码登录图书管理进入论
20、坛11(2)网站目录设计根据网站内容和功能,规划目录结构:Tsgl(图书管理)Images(图像文件夹)Default.asp(默认页)Data(数据文件夹)Ls(登录文件夹)Books(管理文件夹)Login.htm(登录)Add.asp(添加)xgs.asp(修改)Modify.asp(修改)Del.asp(删除)Logins.aspltindex.asp(论坛)book.asp(浏览)12(3)链接设计和导航类型Gly.asp(浏览)Default.asp(图书管理)Login.asp(登录)图书动态浏览Gly.asp(浏览)Add.asp(图书添加)Del.asp(图书删除)Modif
21、y.asp(图书修改)TTFF13(4)网页的风格设计读书是严肃的但要有个闲适的心情。本网站设置以淡雅为主本着浏览图书就要有清新自然,给人一种想要探究的感觉。(5)网页的布局(6)数据库设计与实现1数据库概念本系统的关键在于 ASP 数据库的开发应用技巧和流程。为了与数据库更好的配合工作,我们采用了 ADO 对象。使用 ActiveX 数据对象 ADO,可以对来自许多数据提供者的数据进行读取和写入操作。例如,可以使用 ADO 访问Microsoft Access、Microsoft SQL Server 和 Oracle 数据库中的信息。微软公司的 Access 数据库本身不是一个数据库 m
22、服务器,它不能用服务器来运行查询。对于数据庞大的情况,Access 本身不是一个好的选择,另外一个图片论坛入口标题特色图书 推荐图书新书推荐图书管理14要考虑的是数据库的安全问题,Access 比起 SQL Server 而言,总体的安全性要差。 对于 ASP 而言,与它搭配的最常用的数据库是 Microsoft SQL Server ,但从应用的角度而言,本系统从前端 ASP 页面的内容来看,它并不十分关心后台的数据库类型。它采用的数据库组件(ADO)模型对于系统开发者而言,是面向对象封装好的,开发者在面对不同的后台数据库时,需要修改的只是很少的一些对方即可。因此采用了在创建、使用以及配置上
23、都比较容易的 Access 数据库。Access 是 Microsoft Office 系列中的一个组件,它用于企业管理和个人用户中,提供通过向导建立数据库管理系统和通过编程建立数据库管理系统。Access 采用的是”关系型数据库” ,它本身就可以生成一个完整的系统。由于它和 VB 同为 Microsoft 开发,Access 中采用 Microsoft Access Visual Basic编程,所以它能很好的和 VBScript 结合编程。现在越来越多的人选择 Access 2002 作为自己的数据库,它和 Access 2000 相比,有着更突出和优越的地方。在 Access 2002
24、中,使用经改进的 Data Access Page 设计程序,可以快速创建连到 Access 和 SQL Server 数据库的 Web 页,实现输出报表、表格,以及 XML 格式的查询。新引入的 Data Access Pages 是表格和报表的 HTML/XML 版本,是该版本中许多新功能的核心。但它只能在 Internet Explorer 5.0 及以上版本实现 (Access 页虽然可以被配置到 Internet 网站,但它必须配置 Remote Data Services)。2 数据库设计概念结构设计15a. 实体及实体属性表一:bd(表单),yhm(用户名),xb(性别), mm
25、(密码), qrmm(确认密码),sf(省份), cs(城市)。表二:tslb(图书类别),tsm(图书名),zz(作者),nrjj(内容简介),tjsj(添加时间),xgsj(修改时间),sc(删除) 。b. 实体之间联系用户名 图书类别 图书名c.E-R 图表一:表二:用户名密码图书类别图书名分类内容简介添加时间修改时间删除nm16表三:逻辑结构设计3数据库的实现实现数据库与数据表、查询、存储之间的连接。Book.mdbGly.mdb管理员浏览删除添加保存修改17Yhzc.mdbBbs.mdb18第三章 总体设计31 模块详细设计模块说明:模块名称:添加图书;模块标识:add.asp模块功
26、能:通过表单添加图书到数据库(books.mdb)表(books)中;图书标题及内容不能为空;添加成功后回到管理员页(gly.asp)。编程语言:VBScript模块接口:调用模块名:gly.asp被调用模块名:add.asp、gly.asp输入数据文件名:add.asp19输出数据文件名:add.asp、books.asp主要的表单对象、内存变量和数据库表的字段:表单 数据库表字段语意 addfrom add.asp post 内存变量 books.mdb books标题 title text 文本框 stitle title 文本内容 intro textarea 多行文本框 sintro
27、 intro 备注添加 submit submit 按钮 重设 submit1 reset 按钮处理概要通过 add.asp 中的表单输入数据,若其中的图书的标题及内容不为空,建立记录集对象,指定相关属性,打开记录集,通过记录集对象的 addbook 方法添加记录到数据库(books.asp)表(books)中,然后返回管理员页(gly.asp)。20第四章 详细设计41 程序流程图开始添加信息输入框是否有空打开数据库21图 4-1 图书、论坛添加流程图是是 否刷新数据库结束修改信息输入框是否为空修改成功存入数据库开始224-2 修改流程图否是刷新记录集结束输入关键字连接数据库检查是否有此关键
28、字选中次对象开始234-3 删除记录42 主要窗体功能及实现办法(1)系统首页它的功能主要是浏览和链接各个子功能模块,用户可以进入不同的界面,可以在主页 index.asp 浏览,管理员登录可进入 gly.asp。主界面也包含一些重要的浏览等功能,如:特色图书的的、推荐图书、新书推荐的浏览、总体浏览以及进入论坛等。主界面如图 4-4 所示:删除对象刷新数据库结束24主页中链涟接都要用到数据库里的信息,必须和数据库进行连接,所以这里首先介绍连接数据库的方法,本系统中和数据库的连接使用代码实现都是通过调用文件:odbc_connection.asp 来实现的该文件的代码如下:该代码是使用 ADO
29、技术来存取符合 ODBC 标准数据库的内容,在这里有好多种连接数据库的方法在这里我们运用的是不用数据源的连接方法,另外,我们采用了 SERVER 对象的 MAPPATH 方法,它的作用是通过 MAPPATH 方法可以将虚拟路径转化为上面的物理路径。增强整个文件的可移植性。用到的页面只需用把这个文件包含进来就可以了。(2)默认页的实现默认页包括进入主页和管理员登陆,可以链接到具体的页面。进入主页后可查看图书管理,2627图书管理的页面具体的实现:无标题文档图书管理28图书名作者图书类别内容简介添加日期“添加图书 29(3)图书添加页在图书管理中可浏览图书与添加图书。具体的设计如下:“and re
30、quest.form(“zz“)“ and request.form(“nrjj“)“ thendim db set rs=server.CreateObject(“adodb.recordset“)rs.activeconnection=“driver=microsoft access driver (*.mdb);dbq=“ &server.MapPath(“books.mdb“)rs.source=“select * from books where tsm=“rs.locktype=2 rs.opendim fields(3),values(3)fields(0)=“tsm“fields(1)=“zz“fields(2)=“tslb“fields(3)=“nrjj“values(0)=stsmvalues(1)=szzvalues(2)=stslbvalues(3)=snrjjrs.addnew fields,valuesrs.updaters.closeset rs=nothing