毕业设计(论文)-网络小型数字图书馆的开发与测试.doc_第1页
毕业设计(论文)-网络小型数字图书馆的开发与测试.doc_第2页
毕业设计(论文)-网络小型数字图书馆的开发与测试.doc_第3页
毕业设计(论文)-网络小型数字图书馆的开发与测试.doc_第4页
毕业设计(论文)-网络小型数字图书馆的开发与测试.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网络小型数字图书馆的开发与测试网络小型数字图书馆的开发与测试 摘摘 要要 随着信息技术的迅猛发展,传统图书管理方式已不能满足现代化的图书管 理需要。为了跟上信息时代的步伐,数字化图书管理系统应运而生。数字化图 书管理系统主要用于对图书、读者、以及借阅的管理。它不仅能够简化人们的 工作,系统化地对图书和读者进行管理,及时的统计出所有的借书记录;而且 还能够给读者提供在线图书查询,以及公告新闻等功能,让读者能够了解到图 书馆的最新动态,其用途很广,可以用于各高校的图书馆,企业集团的藏书中 心,以及提供借阅业务的大型书店等。 本系统的开发是基于 b/s 结构,采用 asp 程序设计语言及 sql server 2000 数据库进行开发;主要完成了系统的总体设计与规划、图书数据库的设计、系 统页面的制作与美化、系统安全级别的定制和系统程序的编写、调试与修改等 工作。本文首先对数字图书管理系统进行了需求分析;然后较详细的设计和实 现了数字图书管理系统的数据库及各功能模块,包括前台管理、图书检索、图 书借阅、在线电子图书阅览、图书公告、留言和后台管理等功能模块;最后, 通过测试与分析,说明该系统运行稳定、可靠,具有一定的实用价值。 关键词关键词:数字图书馆;图书检索;图书借阅;数据库;在线电子图书 design and implementation of a small digital library abstract with the violent development of information technology, the traditional library management methods could not be satisfied with the needs of the modern library management. in order to follow the step of the information times, the digitized library management system arises at the historic moment. the digitized library management system mainly uses in the management to the books, the reader, as well as borrows. it not only can simplify peoples work, manage the readers and the books systematically, promptly statistics all the records of the borrows, but also provides functions, such as on line inquiry for readers, bbs and so on, which lets readers be able to understand the newest tendency of library. its use is very broad, may use in various universities library, the collection center of enterprise, as well as provides borrows service of the large-scale bookstore and so on. this system development is based on the b/s structure, uses the asp programming language and sql server 2000 databases to carry on the development. this paper mainly has completed the design and the plan of system, the design of books database, the manufacture and beautified of system page, the custom-made of system security rank, the programming, debugging and revising of system program, etc. this paper has carried on the demand analysis to the digital library management system; then the database and the various functions module of digital library management system are designed and realized in detail, including the onstage management, the retrieval of books, the borrows of books, the reading of on-line electronic books, books announcement, the message, the backstage management and so on; finally, through the testing and analyzing, which shows this system is stable, reliable, and having the certain practical value. key words: digital library; books inquiry; books borrow; database; on- line electronic books 目目 录录 论文总页数:31 页 1 引言1 1.1 课题背景及意义.1 1.2 课题的研究与开发目的.1 1.3 本文的主要工作.2 2 数字化图书管理系统的需求分析2 2.1 系统需求分析.2 2.2 系统流程分析.3 2.3 系统功能分析.4 3 开发工具及相关技术5 3.1 macromedia dreamweaver 2004 简介 5 3.2 microsoft sql server 2000 简介5 3.3 asp 语言及相关技术介绍 .5 3.4 vbscript 脚本介绍6 3.5 sql 语言介绍.6 3.6 特殊功能原理.6 4 小型数字图书馆的总体设计7 4.1 系统模块设计.7 4.2 数据库的 e-r 图.9 4.3 数据库设计.9 4.4 数据库的约束与关系.12 5 小型数字图书馆的具体实现13 5.1 前台管理模块.14 5.2 图书检索模块.15 5.3 图书借阅模块.18 5.4 在线电子图书阅览模块.20 5.5 图书馆公告模块.21 5.6 留言簿模块.21 5.7 后台管理模块.22 6 系统的测试与分析24 结 论28 参考文献29 致 谢30 声 明31 第 1 页 共 31 页 1 引言引言 1.1 课题背景课题背景及意义及意义 随着网络技术的迅速发展,无论是企事业单位,还是学校都在借助于网络 平台进行信息的管理。当前,随着基于网络学习平台的发展,基于网络的电子 书籍给人们的学习带了很多方便,人们可以在网上进行电子书籍阅览、还可以 进行图书的借阅,这些都给人们带来了前所未有的便利。因此,基于 web 的数 字图书馆的设计与开发既有非常重要的现实意义。 作为知识经济的重要载体,数字图书馆是国家信息基础设施重要组成部分, 目前已成为评价一个国家信息基础水平的重要标志和本世纪各国文化科技竞争 的焦点之一。对于我国来说,数字图书馆的研发起步较晚,因此,建设数字图 书馆更加具有必要性和紧迫性。 开发这样一个功能较完善的小型数字图书馆系统。既锻炼了学生的实际动 手能力,又引导学生进行了一次模拟实际产品的开发,对于学生以后工作能力 的培养具有重要的意义。 1.2 课题的研究与开发目的课题的研究与开发目的 从用户的实际需求出发,对数字图书馆系统进行了全面考虑。整个系统的 将高可用性放在了第一位,另外,还考虑到系统的运行性能、高可扩充性、开 放性、可维护性、用户操作的简易性以及充分保护用户投资等诸多方面的需求。 数字图书馆是采用现代高新技术所支持的数字信息资源系统,是下一代因 特网上信息资源的管理模式,将从根本上改变目前因特网上信息分散不便使用 的现状。通俗地说,数字图书馆是没有时空限制的、便于使用的、超大规模的 知识中心。具有较高的可用性、扩展性、便于管理等特点。它解决方案可以包 括解决数字资源创建、组织、管理、保存、发布、检索和利用整个过程的各个 组件或模块,每一个组件或模块都可以是单独开发的。 本系统的开发是采用 b/s 结构,模拟当今已有的一些数字图书馆系统进行 设计与开发。因此,本次毕业设计应首先分析数字图书系统的相关功能,结合 本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识 (包括计算机网络技术、编程技术等相关知识) ,选择所熟悉的开发工具进行本 毕业设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程 及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关的设计文 挡,为后面的毕业论文的写作准备材料;最后,系统开发完毕后,进行调试和 试运行,做好调试和试运行的相关记录,也为后面的毕业论文的写作准备材料。 第 2 页 共 31 页 本课题系统的主要目的是让学生能够综合运用以前所学知识(包括以前所 学的一些关于网络技术、编程技术等相关知识)的能力,开发一个功能较完善 的小型数字图书馆系统。 1.3 本文的主要工作本文的主要工作 数字图书馆系统的工作主要是为着满足来自两方面的需求,分别是图书借 阅者和图书馆管理人员。本文所研究的主要内容也是围绕着这两者的需求来进 行的。论文的第 1 章主要对数据图书馆的开发背景,目的,及意义进行了分析;第 2 章主要是对数字图书馆系统进行需求分析,以及对其数据流程与功能进行分 析;第 3 章主要把系统开发工具进行介绍,另外讲解开发系统所用到的一些特 殊功能技术;第 4 章是系统的总体设计,主要讲解了系统各功能模块的设计, 以及数据的开发与设计;第 5 章就是讲解每一个功能的具体实现,第 6 章是对 系统的测试及还存在的不足之处。 2 数字化图书管理系统的需求分析数字化图书管理系统的需求分析 2.1 系统需求分析系统需求分析 随着社会发展的日新月异,社会信息量的与日俱增,作为信息存储的主要 媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理 部门都需要使用方便而有效的方式来管理书籍。图书馆各项工作 (如采购、编 目等)都要围绕读者服务工作来开展。 图书流通的好坏取决于管理工作,在图书流通工作中有大量各种繁杂的手 续,如读者登记、预约、各种借还、续借、罚款以及各种统计记录等。这些大 量的重复性工作仅仅靠手工进行管理就难以应付,经常出现读者排队的现象。 因此,要想充分利用图书资料,掌握图书流通的各种信息,就必须采用新技术。 当前,基于网络学习平台的不断发展,就需要一个功能比较完善的数据管 理系统,具有数据操作方便、高效、迅速、功能强大等优点。既满足了图书馆 工作人员的用自动化代替手工劳动的强烈要求,又满足广大读者以最快的速度 查找到所需要的文献资料。从而提高文献的利用率,减低拒借率,并为采购文 献提供定量依据,提高藏书质量。借助于网络平台进行信息的管理,基于网络 的电子书籍给人们的学习带了很多方便,人们可以在网上进行电子书籍阅览、 还可以进行图书的借阅,这些都给人们带来了前所未有的便利。 借助数字图书馆系统图书借阅者可直接查看图书馆图书情况,如果图书借 阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维 第 3 页 共 31 页 护部分个人信息。图书借阅者只应该查询和维护本人的借书情况和个人信息。 图书馆管理功能的信息量大,数据安全性和保密性要求最高。本功能实现对图 书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员 信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、图书的 基本信息;浏览、查询、统计、删除和修改图书借阅者的基本信息,浏览、查 询、统计图书馆的借阅信息,可以为图书借阅者加入借书记录或是还书记录, 在删除某条图书借阅者基本信息记录时,应实现对该图书借阅者借阅记录的级 联删除;在线阅读电子图书、读者留言的管理与维护,维护数据库的完整性(即 备份与恢复)。 2.2 系统系统流程分析流程分析 为了促进图书管理的信息化、网络化,采用 asp 编写了 web 方式的数字 图书管理系统,结合 sql server 2000 数据库来实现。是支持单机、网络、 以及多用户的图书管理系统。本系统可直接放于网络服务器上,在任何地方均 能实现管理。 这套系统提供一个交互式平台,它不仅对图书、读者、图书借阅进行管理, 更有在线进行续借等功能;还提供了管理员推荐,借阅排行榜,以及最新入库 的新书一栏,另外还有留言簿,方便与读者的交流。这样就能够更加及时的把 读者的意见反馈给管理员,以完善管理体制,为读者提供最好的服务。读者可 以在网络上直接进行系统,登录系统后可以查询自己所借阅图书的情况,并且 可以在线进行续借操作,更大的提高了工作的效率。即可以减少管理员的工作, 也大大地方便了读者。 系统主要数据流图如图 1 所示。 第 4 页 共 31 页 图 1 系统数据流图 2.3 系统功能系统功能分析分析 本系统主要功能的详细说明如下: (1) 基本操作 借书:首先输入读者编号,回车后显示出该读者的详细信息,以及已经 借阅的图书,允许借出的册数,还可以再借的册数。然后输入要借的书籍编号, 回车后将该书籍标注为借出,并且生成相应的借书记录。 还书:输入要还图书的编号,回车后显示出该图书详细的借阅资料,并 提示有无罚款金额等。点击“归还”按钮或按 f6 键即可完成还书操作。 (2) 系统设置 出版社设置:设置出版社的相关信息,系统已经内建大量出版社资料。 图书类别设置:根据实际情况对图书信息进行分类,系统内建了标准图 书分类方法。 罚款金额设置:设置读者借书超期的罚款金额。 读者权限设置:设置读者的借书权限包括限借册数和限借天数等。 (3) 系统管理 超级管理员操作:输入高级管理员密码后可添加普通管理员。 高级管理员密码修改:修改高级管理员操作的登录密码。 普通管理员密码修改:修改普通管理员登录系统的密码。 第 5 页 共 31 页 书库管理:添加、修改、删除、查询图书相关资料。 读者管理:添加、修改、删除、查询读者相关资料。 数据备份:此项功能需要每天按时备份数据库。 (4) 主要功能 书库查询:按照书籍编号、书籍名称、书籍类别、出版社、作者姓名等 对图书资料进行查询打印。 读者查询:按照读者编号对读者资料进行查询打印。 借书查询:按照书籍编号、读者编号、等方式进行借书查询打印。 超期查询:显示到当天为止,所有已经超期的读者。 统计排行:按照图书馆所有图书的借阅次数进行统计排名,方便管理员 了解图书借阅的畅销情况。 新书入库: 最新的书籍入库查询,在首页有一个推荐栏进行导航读者。 读者订阅: 读者可以在留言簿向图书馆建议引入大家需要的书籍,写 清楚书名,出版社与作者。 图书分类: 读者可以按照图书所属于的不同的类型,查询自己所需要 那一类图书中的所有书籍。 在线阅读: 有一些重要的电子书刊,可以直接在网络上供读者阅读, 这样更充分的利用了网络资源,给读者提供了很大的便利。 3 开发工具及相关技术开发工具及相关技术 根据用户的要求,以及产品实施的特性,系统需要具有界面友好;操作简 单;网络化程序高;查询灵活快捷;运行稳定、安全;资源共享率高等特征。 本系统是基于 windows 2000+iis,采用 asp 程序编写,以 sql server 2000 作为主体数据库开发而成的。系统开发工具使用 macromedia dreamweaver 2004 和 sql server 2000。这两种工具结合适合各类管理系统的快速开发,开发的 成品与 windows 系列操作系统兼容性较好,而且开发维护费用较低。 在讲解系统的主要功能之前,先把此次系统开发所用的工具、环境以及所 使用到的相关技术知识介绍一下,方便读者在接下来的系统功能介绍中,对功 能的实现有更多的领会。 3.1 macromedia dreamweaver 2004 简介简介 macromedia dreamweaver 2004 是一个专业的可视化 web 应用程序编辑器。 它与以前的版本相比,其功能更加强大,界面更加友好,而且动态网页制作方 面的功能更加完善。使用 macromedia dreamweaver 2004 可以轻松地制作出跨 第 6 页 共 31 页 平台和跨浏览器的精美网页。 3.2 microsoft sql server 2000 简介简介 microsoft sql server 2000 是一个高性能的客户端/服务器结构的关系数据 库管理系统(rdbms, relational database management system) 。sql server 2000 是为了支持高容量的事务处理(比如在线订购录入、存货目录、记账或制 造)以及数据仓库和决策支持系统(比如销售分析应用)而设计的。它运行在 microsoft windows nt4 或 microsoft windows 2000 server 上基于 intel 处理 器的网络。可以把 sql server 2000 作为一种个人桌面数据库系统安装在运行 window nt workstation 4、windows 2000 professional、windows98 和 windows millennium edition(me)的机器上。 3.3 asp 语言及相关技术介绍语言及相关技术介绍 asp(active server pages)是基于 microsoft windows nt 和 microsoft internet information server 的开放式脚本开发环境,它很好地把 html 和脚本融 合在一起,提高了编程的灵活性,降低了开发难度。asp 中的脚本在 web 服 务器端运行,而不是传统的在客户浏览器中运行,这一措施使客户的浏览器无 须担心服务器端的网页使用哪一种脚本,asp 都会生成一个符合 html 标准的 网页送回客户端。 asp 的五种常用的内置对象为: request 对象:获取从用户端浏览器发送到服务器端的所有信息,允许 访问用表单提交给服务器的数据 response 对象:将 html 和各种其他数据返回到用用户端浏览器 server 对象:为 asp 的应用程序提供服务器的功能 application 对象:使给定应用程序的所有用户共享信息 session 对象:在此对象中维护每个用户的信息,可以使用 session 对象 存储特定的用户会话所需的信息 3.4 vbscript 脚本介绍脚本介绍 asp 程序是在 microsoft iis(internet information services)或 pws(personal web server)等 web 服务器执行的 script。script 是一段嵌入在 html 源代码中 的小程序。asp 支持多种脚本,比较常用的有 vbscript 和 jscript。 其中 vbscript 是 asp 的缺省默认语言。可以在 asp 网页中使用其他脚本语言,如 jscript, perlscript 或者其他的脚本语言。本系统主要采用了 vbscript。 3.5 sql 语言介绍语言介绍 sql 是一个完全标准化的语言。在 sql 的发展过程中,国际标准化组织 第 7 页 共 31 页 (iso) ,美国国际标准居(ansi)等机构为 sql 制定了各种标准。但是对于 不同的数据库系统,它们所支持的 sql 功能也各有所不同,语法也有差异。 sql 已经成为关系型数据库的标准语言。 sql 按其功能分主要由以下几部分组成: 数据定义语言(ddl):实现定义,删除,和修改数据库对象的功能 数据查询语言(dql):实现查询数据的功能 数据操纵语言(dml):实现对数据库数据的增加,删除,修改功能 数据控制语言(dcl):实现控制用户对数据库的操作权限的功能 其中用得最多的是数据操纵语言(dml)。它包含了最常用的核心 sql 语句, 即 select,insert,update,delete。 3.6 特殊功能原理特殊功能原理 (1)数据同步原理 首先系统启动时,先要对数据库中的数据进行同步计算,对所有的借书记 录进行判断,在没有还书的记录中查找出借阅超期尚未还的记录,自动计算出 其超出管理员所设定的借阅期限的天数,并在相应的字段中标明。再得用超期 天数乘以相应的每日罚金,将结果写入读者表中的罚金字段中。这样就保持了 系统启动后,管理员以及读者对数据操作的及时性和有效性。 (2)图书借阅原理 当读者查找到相应的图书需要借阅时,告诉管理员,管理员根据读者编号, 进入读者管理页面查看该读者所有的借书记录,输入所要借阅的图书编号,点 击借阅按钮就可以将借书记录存放到数据库中。数据库中的操作会将图书表相 应图书记录的借出字段标注为已借出,这样其他的读者就不会再次借阅已借出 的图书。 (3)图书续借原理 读者可以通过网络直接进入图书馆系统,登录身份过后可以查看自己所有 的借书信息,对自己未续过的图书可以直接点击“续借”完成续借操作,无需 再到图书馆去找管理员。当然,如果读者不闲麻烦,也可以直接到图书馆去找 管理员给自己进行续借操作。 (4)实现回车换行格式控制的原理 当我们在数据提交文本框中做好了格式调整,再将其提交到数据库中存放。 但是,当再次将其从数据库中导出时,所有的数据将会成一个段落。这是因为 通过数据库显示到用户界面的时候就无法区分用户的换车和空格,所以在这里 进行了简单的替换实现回车与空格的效果。本系统中如在线阅读就属于此种情 况,所以在导出图书的数据时,利用 replace 来进行格式设定。asp 中的代码为: 第 8 页 共 31 页 replace(con(“content”), “chr(13)”,”)。 (5)月份加减的实现 要判断读者借书是否超期,就需要对月份进行加减操作,日期的加法操作由 dateadd( )函数来实现。判断两个时间之间的差用 datediff( )来实现。如判断一 个指定的日期加上一个月后与当前日期相比较的相差的天数是多少(这里就用 月份来操作) ,就需要用两个函数嵌套来实现。 asp 中的代码为:datediff(“d“,dateadd(“m“, 1, indate), now) 4 小型数字图书馆的总体设计小型数字图书馆的总体设计 4.1 系统模块设计系统模块设计 整个数字图书馆系统分为两个大的模块:前台操作模块和后台管理模块。 其具体层次框图如图 2 所示。 图 2 层次框图 其中前台部分主要是读者可以在线进行的操作。读者可以在查询图书资料, 阅读规章制度、公告、以及在线阅读电子图书,登录帐号对图书进行续借,还 可以在留言簿留言等操作功能。其模块图如图 3 所示。 第 9 页 共 31 页 图 3 前台模块图 图 4 后台管理模块图 而后台管理模块则主要是管理员对图书馆进行管理。对读者的管理,图书 资料的管理,图书借阅的操作,可以对留言簿的留言进行回复及清除操作,公 告的发布等等功能,另外还有对数据库的备份和恢复功能,以保证数据的安全 和完整性。其具体的模块结构图如图 4 所示。 第 10 页 共 31 页 4.2 数据库的数据库的 e-r 图图 根据系统的流程与功能需求,读者可以借阅图书,管理员对读者、图书、 以及图书馆的其他信息进行管理,而且不同的管理员也拥有不同的管理权限等, 对数据表进行设计。具体的各数据实体之间的关系主要表示为如图 5 所示。 图 5 数据库 e-r 图 4.3 数据库设计数据库设计 根据系统功能设计的要求以及功能模块的划分,针对以上 e-r 图进行设计, 对于数字图书馆系统一共涉及到八个数据表。它们分别是:图书表(book) ,读 者表(reader) ,借阅表(borrow) ,管理员表(manager) ,留言表(lyan) ,公 告表(announce) ,在线阅读表(onlinereading) ,图书馆参数表(librarydetail) 。 下面就介绍一下各表的设计结构及其功能。 (1)图书表(book):主要用于存放图书的详细信息。包括图书的 bookid,名称,作者,出版社,类型,入库日期,图书的介绍等信息。推荐是 一个(bit)类型字段,用于存放此书是否为管理员推荐图书,若是则为 true, 否则为 false。是否借出也是一个(bit)类型字段,用于标识该图书是否已经被 读者借出,若是为 true,否则为 false。其详细设计结构如表 1 所示。 表 1 book 结构表 字段名称类型主键非空默认值 第 11 页 共 31 页 bookidint(4)yesyes 字段名称类型主键非空默认值 书名varchar(50)noyes 作者varchar(50)noyes 出版社varchar(50)noyes 类型varchar(50)noyes 推荐bit(1)nonofalse 是否借出bit(1)nonofalse 入库日期datetime(8)nono 借阅次数int(4)noyes0 图书介绍text(16)noyes (2)借阅表(borrow):主要用于存放读者借书的记录。其中用 readerid 和 bookid 共同作为主键,其分别与 reader 表和 bookid 表中的 readerid,bookid 相对应,以标识不同的读者所借阅的不同的图书。续借否字 段用于存储读者是否已经对所借的图书进行过续借,是否超期字段也是一个 bit 类型数据,用于存储读者所借的图书是否超期未还,若已超期,系统会自动计 算超期的天数,存放在超期天数字段里。其详细结构如表 2 所示。 表 2 borrow 结构表 字段名称类型主键非空默认值 readeridint(4)yesyes bookidint(4)yesyes 借阅日期datetime(8)noyes 续借否bit(1)noyesfalse 是否超期bit(1)noyesfalse 超期天数int(4)no yes0 (3)读者表(reader):用于存放读者的信息。包括用户的 readerid,名 字,密码身份证号,住址,联系方式以及罚款等等。每注册一个读者用户,都 会自动生成一个唯一标识 readerid,以供用户登录使用,以及借书等其他操作。 如果借阅表中记录为用户借阅图书超期,则会根据超期天数计算出对应用户的 罚款金额,并存放在罚金字段当中。其详细结构如表 3 所示。 表 3 reader 结构表 字段名称类型主键非空默认值 readeridint(4)yesyes 会员名varchar(20)nono 密码varchar(20)noyes 身份证 idvarchar(20)noyes 住址varchar(50)nono 联系方式varchar(50)nono 第 12 页 共 31 页 邮箱varchar(50)nono 字段名称类型主键非空默认值 罚金float(8)noyes0 (4)管理员表(manager):用于存放管理员的所有信息。包括其登录名, 密码,地址和联系方式,这里 isadmin 字段用于标识管理员是否为超级管理员, 若是则值为 true,否则为 false。这些信息提供管理员登录时的信息,以及对其 权限控制。由超级管理员亿创建的普通管理员其 isadmin 字段都为 false。其详 细结构如表 4 所示。 表 4 manager 结构表 字段名称类型主键非空默认值 idint(4)yesyes managernamevarchar(20)noyes managerpwdvarchar(20)noyes isadminbit(1)noyesfalse telephonevarchar(20)nono addressvarchar(50)nono (5)留言表(lyan):用于存放用户的留言标题,留言内容,留言者,及 其联系方式,留言时间等。另外还可以存放管理员对留言的回复内容。将回复 内容和留言存放在一个表中,这样更方便于数据的操作和存储。其详细结构如 表 5 所示。 表 5 lyan 结构表 字段名称类型主键非空默认值 idint(4)yesyes topicvarchar(50)noyes namevarchar(50)noyes telephonevarchar(50)nono thedatedatetime(8)noyes contenttext(16)noyes replytext(16)nono replydatedatetime(8)nono (6)公告表(announce):用于存放管理员所发布的公告信息。包括公告 标题,公告内容,和发布公告的时间等。其详细结构如表 6 所示: 表 6 announce 结构表 字段名称类型主键非空默认值 idint(4)yesyes 第 13 页 共 31 页 topicvarchar(50)noyes contenttext(16)noyes 字段名称类型主键非空默认值 thedatedatetime(8)noyes (7)在线阅读表(onlinereading):用于存放供读者在线阅读的图书的信 息。包括图书名,图书的主要介绍,和图书所有的内容,以及入库日期等。其 详细结构如表 7 所示。 表 7 onlinereading 结构表 字段名称类型主键非空默认值 idint(4)yesyes topicvarchar(50)noyes contenttext(16)noyes indatedatetime(8)noyes illuminatetext(16)nono (8)图书馆参数表(librarydetail):用于存放图书馆的主要参数信息。 即一本书的借阅期限,一个读者最多可能借书的本数,以及超期后,对读者一 天的惩罚金额,另外还可以在这里增加一些附加的管理制度。等信息。其详细 结构如表 8 所示。 表 8 librarydetail 结构表 字段名称类型主键非空默认值 idint(4)yesyes 借书期限int(4)noyes1 借书数量int(4)noyes5 超期罚金float(8)noyes02 管理制度text(16)nono 4.4 数据库的约束与关系数据库的约束与关系 数据库中各表都有其特定的限制,以及一些重要的关联。这里将一些重要 约束描述如下: (1)管理员表与其它表无关系,只是为了存放管理员的帐号与密码等数据。 (2)读者表里的 readerid 字段为主键,用于存放老师的 id。 (3)图书表里存放的是图书的所有信息,其中 bookid 为主键,用于存放 图书的 id。 (4)借阅表里存放的是读者借阅图书的所有信息,其中 readerid 和 bookid 共同作为其主键。 (5)借阅表也是最重要的一个表它同时与二个表存在着外键约束,图书表 第 14 页 共 31 页 之间,与读者表之间存在着外键约束,图书表里面的 bookid 字段的值与借阅表 里面的 bookid 值相关联,读者表里面的 readerid 字段的值与借阅表里面的 readerid 值相关联。 (6)公告表和在线阅读表均与其它表无关系。 (7)留言表用于存放留言数据,及管理相应的回复内容,与其他表也无关 系。 (8)其它各表的字段值都是有一些非空的约束,详细情况请见各数据表。 (9)在新建数据库之后插入了一些测试数据(详见系统数据库,这里不提 供) 。 5 小型数字图书馆的具体实现小型数字图书馆的具体实现 图 6 首页界面 本设计采用 b/s 结构,综合运用以前所学的专业知识,设计开发的一个功 能较完善的小型数字图书馆系统,具体包括以下功能: (1)前台管理模块(用户的登陆、用户信息的维护等功能) ; (2)图书检索模块(包括图书的搜索、图书分类查询、借阅查询等功能) ; (3)图书借阅模块(包括正常借阅、续借图书以及还书等功能) ; 第 15 页 共 31 页 (4)在线电子图书的阅览; (5)图书馆公告(包括图书馆新闻、新书预告、规章制度等) ; (6)留言簿模块(包括留言簿的浏览、读者留言、留言簿的管理等功能) ; (7)后台管理模块(包括图书的录入、增加、删除等功能) 、读者的管理 (读者帐号的注册、等) 、数据的更新、数据库的备份与恢复等功能。 下面就详细介绍一下每一个功能模块。 首先整个系统对数据库的连接用了一个 conn.inc 文件,它负责与 sql server 2000 的连接工作。具体代码为: 每一个需要连接数据库的页面可以直接引用该文件即可。实现语句为: 图 6 界面图是整个数字图书馆系统的首页。左面部分主要用于用户的登录, 对图书的查询,而右面则公告信息以及推荐图书的查看。主题图下面的导航栏 导航你到整个系统。 5.1 前台管理模块前台管理模块 本模块主要实现的是对读者身份进行鉴别,以及读者对自己的资料进行维 护等功能。 (1)读者登录 读者通过表单提供读者帐号和密码,系统根据读者所提供的信息对其进行 身份查询鉴别。如果身份合法的话,直接进入读者界面,并用 session 变量记录 读者的帐号和密码,以待以后页面使用。 如果条件成立,则就连接数据库,用 sql 语句在 reader 表中以输入的帐号 和密码作为查询条件进行查询是否相符合的记录。其语句为: sql=“select * from reader where readerid=“ 总页数: /显示总的分页页面数 (3) 借阅查询 用户可以查询到自己已借并且尚未还的图书借阅记录,并且可以获悉此书 是何时借阅,以及该书的借阅期限,好让读者把握好时间还书或者进行续借。 查询读者的借书记录,此系统中可以通过两种方式实现。一种是用户通过 身份验证,登录到系统中,在读者页面里点击图书续借标签就可以直接查看到 自己当前所有的借书记录。在这里显示了借阅的图书号、借阅时间、是否已经 续借过、以及读者可以进行续借等操作。这个页面的实现是根据记者登录时所 输入的帐号和密码,登录成功后在 borrow 表中查找出该读者的所有借书信息显 示到页面上来。 另外一种查询借书记录的方式是管理员在图书借还标签下在相应的文本框 内输入读者的帐号,进入 tsjh1.asp 可以查看到该读者的所有详细信息。包括其 读者号、用户名、身份证号、联系电话等等信息,还有的借书记录信息,也包 括图书号、借阅时间、是否已经续借过等。 两种方式都可以让读者了解到自己的借书信息,以保证能够及时的对图书 进行借还,以免超期被罚款。 5.3 图书借阅模块图书借阅模块 5.4 在线电子图书阅览模块在线电子图书阅览模块 5.5 图书馆公告模块图书馆公告模块 图书馆公告包括图书馆新闻、新书预告、规章制度、以及公告信息的发布 等等。 (1) 公告信息 公告信息可以是新书的预告,以及图书馆内的主要为读者提供图书馆最新 的动态信息。读者可以通过这些消息来增加对图书馆的了解。 公告是在图书馆系统的首页。这里显示了最新的十条公告,另外这些信息 第 20 页 共 31 页 的右上方有一个”更多”的字样,点击它能够进入 moreannounce.asp 页面显示所 有的公告信息。公告名都采用了一个超连接,并且还传递了该信息的 id 号到下 announce.asp 页面。 “. 这里还采用了 left 字符串截取函数,在首页上限制其显示的内容多少。 announce.asp 根据所提交上来的 id 号显示公告记录。语句为: /显示公告的内容,并采用一个 replace( )函数来恢复原来的换行、空格等格式。 “) % 图书馆的规章制度可以直接从首页的导航进入 rule.asp。这里有图书馆的所 有详细管理制度,特别是新读者特别需要阅读这些制度。 (2) 发布公告信息 对公告的发布主要是公告的添加与删除操作。管理员需要向发布图书馆最 新公告或是新闻时,便使用添加功能来实现;公告信息过期或由于其他的原因 需要清除时,则使用删除功能。此功能操作简捷,安全,充分的提高了工作的 效率。 5.6 留言簿模块留言簿模块 留言簿给读者提供了非常方便的交流平台了。在这里可以看到所有的公开 留言,每个读者都可以看到,没有任何限制。读者对自己的疑问、建议等都可 以在这里留言,管理员可以对读者的留言进行回复,以及删除等管理工作。主 要包括留言的浏览,用户留言,以及管理员对留言簿的管理等功能。 (1)留言簿的浏览及留言 留言簿首页 liuy.asp,显示所有的读者留言信息,主要包括留言主题、留言 者、联系电话、留言时间、留言内容,以及管理员对其的回复信息等。留言的 排列是按时间的倒序来显示的。 留言簿也用到了分页显示技术。这里根据页面大小每一个页面只显示三条 记录,rs.pagesize=3。分页技术的代码在前面的图书检索模块里面已经详细讲解 过了,这里不再加以说明。 留言簿首页 liuy.asp 左上方有一个我要留言连接项,读者点击这里便可以 进入 liuyan.asp 进行留言。在这里输入相应信息到 liuyan.asp 进行处理,并使用 now 函数获取当前的日期时间作为留言的时间,直接将数据加入到留言数据表 中: query=“insert into lyan(name,content,telephone,topic,thedate) values (“ & request(“name“) 第 21 页 共 31 页 &“,“& request(“content“)&“,“& request(“telephone“)&“,“& request(“topic“)&“,“&now&“)“ conn.execute(query) 当将数据添加到数据库里后,将读者所留言的内容反馈给读者以确认。 (2)留言簿管理 当读者留言后,管理员就需要对留言进行回复,以及可以对一些过期留言, 或是不健康留言进行清理。 从 liuy.asp 的右上方留言管理连接按钮,可以进入到 lymanage.asp 登录页面, 管理员通过身份验证后,就进入到 lygl.asp 页面,每条留言信息下面有两个连 接选项,一个是“回复”连接项,一个是“删除”连接项。 点击回复连接,将该条留言的 id 提交到 lyrep.asp 页面,再通过提交上来 的 id 号查询到该条留言,用一个 textarea 多行文本框来供管理员输入回复内容。 直接提交数据进行判断处理。在这个页面中使用 session(“id”)来记录前面传过 来的留言 id。方便数据处理。使用 update 语句来将回复的内容加入到数据表中 对应留言记录的 reply 字段。 sql=“update lyan set reply=“&request(“liuyan“)&“ where id=“&session(“id“) 操作完后需要将 session(“id”)值赋为空值,即用完后取消前面的记录 id 号, 以免以后误用其值。 session(“id“)=“ 5.7 后台管理模块后台管理模块 后台管理包括图书管理(包括图书的录入、增加、删除等功能) 、读者的管 理(读者帐号的注册等) 、数据的更新、数据库的备份与恢复等功能。 (1) 管理员登录 读者通过导航进入到 login.asp 登录页面,输入自己的登录名与密码,提交 到管理首页 default.asp 登录验证。如果查找到相符合的记录,则登录成功,用 session 变量来记录管理的身份帐号与密码。 session(“manageraccount“)=request(“managername“) /记录管理员帐号名 session(“managerpassword“)=request(“managerpwd“) /记录管理员密码 判断所登录的管理员身份是否是超级管理员,如果 bit 类型字段 isadmin 值 为真的话,说明该管理员为超级管理员,则给 session(“administrator“)变量赋值 为”yes”来标识其特殊身份。 if con(“isadmin“)=true then session(“administrator“)=“yes“ end if (2) 系统数据更新 第 22 页 共 31 页 登录后进入管理主页,里面有一个叫”更新系统信息”的按钮。这是一个系 统起动时,完成数据库里面的数据与当前日期同步的引擎。每天当管理员登录 后,都需要点击按钮来更新数据库信息。 首先系统启动时,先要对数据库中的数据进行同步计算,对所有的借书记 录进行判断,在还没有还书的记录中查找出借阅超期尚未还的记录,自动计算 出其超出管理员所设定的借阅期限的天数,并在相应的字段中标明。再得用超 期天数乘以相应的每日罚金,将结果写入读者表中的罚金字段中。这样就保持 了系统启动后,管理员以及读者对数据操作的及时性和有效性。 (3) 管理功能 超级管理员与其他普通管理员之间有着不同的操作权限。超级管理员除了 有其他管理员所有的管理权限外,还可以创建和删除其他的管理员帐号;可以 修改图书馆的系统参数,如借书期限,超期罚金,以及一个读者能借书的数目; 并且可以查看所有的管理员帐号信息。 普通管理员除了有前面几个章节中所提到的图书借还管理、公告管理、在 线阅读管理、系统信息的更新等操作外,还可以对图书资料进行管理,包括图 书信息的录入,修改和删除等操作;对读者信息的管理,包括读者帐号的录入, 修改和删除等;还可以进行数据备份与恢复操作等操作。和超级管理员一样, 在管理首页 default.asp 中左边的资料更改里可以进行修改自己的资料,这操作 与前面所介绍的读者修改自己的资料类似,这里也不加讲解。 当图书馆购回有新书时,就得将所有的图书信息录入到数据库中,且每一 本图书都有一个唯一的编号,这里编号是由系统自动生成的,当管理员录入一 条新图书记录后,系统就会把所生成的该图书编号反馈给管理员,管理员再把 这个编号填到图书的标签上。当图书过期或是因为其他原来需要清楚或修改图 书的信息时,则就可以直接在删除或修改图书资料 form 表单中输入相应的图书 名,查找到该图书,就直接进行删除或是修改

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论