1、I目 录摘要 1关键词 1Abstract 1Key words .11 绪论 .21.1 引言 21.2 毕业设计主要任务 21.3 目前图书管理系统存在的问题 21.4 课题意义 22 系统分析 .22.1 需求分析 22.2 可行性分析 32.2.1 技术可行性 32.2.2 经济可行性 33 总体设计 .43.1 数据库设计 43.2 逻辑结构设计 53.3 代码 63.4 系统总体结构设计 83.4.1 图书管理系统总体结构图 83.4.2 用户管理员模块功能 83.4.3 图书管理员模块功能 83.4.4 读者管理模块功能 93.2.5 借阅者模块功能 94 系统程序设计与编码 .
2、94.1 研发平台与工具 94.1.1 DSV PHP Editor 工具 94.1.2 SQLyog 工具 94.2 程序设计 .104.2.1 系统主页功能模块的实现 .104.2.2 用户管理员功能模块的实现 .104.2.3 图书管理员功能模块的实现 .114.2.4 查询功能模块的实现 .124.2.5 图书借阅模块的实现 .125 软件测试 125.1 软件测试的方法与步骤 .13II5.2 测试用例设计与测试用例的运行过程及测试结果分析 .135.2.1 模块测试 .135.2.2 集成测试 .135.2.3 验收测试 .145.3 评价 .146 结束语 14谢词 .14参考文
3、献 .15附录 A15附录 B19附录 C21附录 D221基于 PHP图书管理系统的设计与实现计算机科学与技术专业学生 xx指导教师 xx摘要:随着计算机及网络技术的高速发展,数字化、网络化的信息革命从根本上推动了图书馆的发展进程,计算机日益成为图书馆的主要设备。目前很多大型的图书馆已经有一整套比较完整的信息管理系统,但在一些小型的图书馆中,尤其是一些规模小的高校,图书管理系统不够完善,工作起来效率比较低,管理员不能及时了解图书馆内各类图书的借阅情况,读者需要的图书难以在短时间内找到,不便于动态、及时地调整图书结构。为了更好地满足当前读者的借阅需求,解决管理中存在的许多弊端,越来越多的中小型
4、图书馆以及一些高校正在逐步向计算机信息化管理转变。计算机信息化管理以其存储信息量大、速度快、便于管理等优点受到更多用户的青睐。论文介绍了在 PHP 环境采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文档详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、系统分析、业务流程分析、数据流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了新书添加、图书借阅、图书归还、图书检索、读者管理、图书管理等主要的程序框图,并附带了一些主要的窗口和程序。关键词:书管理系统
5、;浏览器;动态网页技术;数据库Design and Implementation of Library Management System Based on PHPStudent majoring in computer science and technology name WangYinliTutor Name ZhangYuankeAbstract: With rapid development of computer and network technology, digitalized and networked information revolutions roily facil
6、itate the development of libraries and computers equipment, and computers are gradually becoming the main equipment of libraries. At present, many large libraries have a full set of relatively complete information management system, but in some small libraries, especially in a small university, most
7、 of the work still need to be completed by hand with a relatively low efficiency, the drawbacks, managers can not timely get the information about borrowed situation, also it is hard to readers to find the needed books in a short time. So it does not facilitate dynamic, timely adjustment of books st
8、ructures. In order to meet the current demanding of readers and solve the drawbacks of manual management, more and more small and medium sized libraries and some universities are gradually changing the computer information management. Because of Computer information management informations big stora
9、ge capacity, high speed and the advantages of being easy to manage ,then it attracts more and more customers.This article introduces the detailed process of exploring a management information system under the environment of PHP, utilizing “Top-Bottom” overall plan and a strategy according to “Bottom
10、-Top” application and exploitation. That is to establish a set of effective scheme for library management by computer, through analyzing disadvantages of traditional library management by human resources. This article emphasizes on three sections. The system analysis section of library management in
11、formation includes feasible analysis, organizing organs analysis, management function analysis, technological process of business analysis, technological process of data analysis, data dictionary, disposal description and the like. The system design section mainly focuses on system function design a
12、nd data base design. And the system realization section has provided several major program charts, together with the main windows and programs.Key words:Library implementation System; Browser; Active Server Page; Database21 绪论1.1引言随着现代图书流通市场竞争的愈演愈烈,如何以一种新的管理方式提高图书流通信息的反馈速度,降低库存占用,加快资金周转,提高工作效率,已经成为图
13、书企业提高竞争力的关键。信息技术的发展给图书企业的管理带来了新的力量,通过图书管理系统对图书企业经营运作的全程管理,不仅使企业摆脱了人工管理带来的一系列的问题,更重要的是提高了工作效率,进而提高了企业的经济效益。对于高校图书馆来说,提高工作效率尤为重要。通过管理系统对图书信息的管理,为图书馆的发展提供了大量的、关键性的数据,图书馆根据这些数据,及时做出决策,进行调整,使之能够更好地为广大师生服务。从上述描述中可以发现,传统的管理流程存在的不足。首先处理借书、还书业务流程的效率很低,其次处理能力比较低,一段时间内,所能服务的读者人数是有限的。为此,图书管理系统需要为图书馆解决上述问题,提供快速的
14、图书信息检索功能、快捷的图书借阅、归还流程。1.2毕业设计主要任务(1)实现图书馆对所藏图书的按类别、书名等多方面的查询,最大的方便读者和图书馆工作人员对所需图书的查询;(2)建立图书馆外借读者数据库,方便工作人员对读者进行有效管理;(3)建立图书馆工作人员数据库,限定每个工作人员对软件操作的权限,最大限度的保护数据库;(4)实现图书馆对新书入库,旧书注销的简单处理,并且建立书籍档案,方便进货;(5)实现图书馆管理系统;1.3目前图书管理系统存在的问题(1)检索速度慢、效率低因为图书馆的藏书种类多、数量多,将藏书准确地分门别类,快速检索,手工进行非常困难,往往是馆中没有此书或已被别人借走。图书
15、馆的规模越大,这个问题越突出。(2)借书、还书工作量大借书、还书频率越大,说明图书馆的作用越大,然而随之而来的大量的借书、还书登记、实存图书的更新以及借出图书超期、遗失等的处理,其工作量之大,往往是人工操作所难以胜任的。而且经常会出现这样那样的差错。(3)图书统计工作难、藏书更新不能及时完成图书馆的图书应根据科学技术的发展和教学工作的需要及时添加和更新,然而由于藏书数量及图书种类越来越多,加上自然损耗,人为破坏,使图书的统计工作难以及时完成,藏书的更新也就很难有针对性地进行,藏书的知识结构得不到良好地控制。1.4课题意义随着计算机的广泛应用,其逐步成为现代化的标志。图书馆或者一些企业内部,甚至
16、是书店,在正常运行过程中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借书信息、还书信息。因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆或者企业内部对图书存销的自动化的管理,能够更快速的满足读者的要求,提高各种工作的效率,现对其设计相应的系统,以达到上述的目的。32 系统分析2.1需求分析作为一个图书管理系统,应该给用户提供方便,简洁的界面应用,对图书借阅归还的流通中图书的详细记录进行归档,实现新进图书的数据录入,实现对所有购进图书的分类查询和分类统计,能够按书名、作者等分类查询现有图书的数量,
17、记录借阅者的个人资料和所借图书的书名、书号数据等,借书时如果每次超过限量或累积超过限量,提示相应信息,并拒绝借阅等功能都是必不可少的。根据调查得知,以前的图书馆采取手工方式对图书借阅信息进行管理,或者现有管理系统都不够完整。以前是将一般的借阅情况记录在借书证上或者将图书的数目和内容记录在文件中,这样图书馆的工作人员只能是对当时的借阅信息比较清楚,时间一长,再进行查询时,就得在众多的资料中翻阅、查找了,既费时,又费力。如果要对很长时间以前的图书信息进行更改就更加困难了。手工操作使得图书借阅信息的管理者工作混乱又复杂。基于这些问题,有必要建立一个图书馆管理系统,使图书馆的日常管理工作规范化、系统化
18、、程序化,避免管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效地查询图书借还情况。2.2可行性分析2.2.1技术可行性技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本系统采用 PHP 开发出友好美观的人机界面,便于用户理解、操作。数据库管理系统采用 MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。因此本系统的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。2.2.2经济可行性鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均
19、以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率,也是图书馆管理发展的必然趋势,其必将有比较宽阔的市场,因此改性统在经济可行性上时可行的。2.3图书借阅管理系统需求模型图书管理系统的主要任务是实现读者迅速检索查询,方便借阅归还图书,图书管理员高效的完成系统的各项基本操作,用户管理员是管理用户设置权限等操作,从图 2.1可以看出图书借阅管理系统要完成一下功能:(1)登录功能:用户管理员、图书管理员、读者、借阅者进入该系统必须登录才是实现各种权限,身份验证正确了才能以不同身份进入该系统所对应的系统使用权限是不同的。(2)图书设置功能:图书管理员可以设置图书馆相关的参
20、数信息。(3)用户管理功能:用户管理员对系统用户进行添加,修改,删除,权限设置等操作。(4)查询功能:对图书馆的馆藏图书等信息进行查询。 4图书借阅借阅者图书归还 图书续借图 书 管 理 员 管理图书信息 图书信息管理用户信息用户信息获取用户信息根据读者信息获取借阅图书信息图书借阅信息图书续借图书借阅归还图书图书归还信息图 2.1 图书馆实现的功能3 总体设计3.1数据库设计数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。数据库是数据管理的最新技术。十多年来数据库管理系统已从专用的应用程序发展成为通用的系统软件。由于数据库具有数据结构化,最
21、低冗余度,较高的程序与数据独立性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别
22、的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。针对图书管理系统,有 4 类核心对象:读者,借阅者,图书管理员,用户管理员。分别实现图书的流通,图书的管理,图书管理系统的管理。系统包含对象如图 3.1。5高校图书管理系统图书进馆 图书外借 图书归还图书管理员参数设置借阅者图书信息借阅者是否超期罚款进馆信息处理图书图书相关信息息修改信息出馆信息用户管理借阅者超级管理员图书管理员权限用户登录用户名密码图 3.1 图书管理系统功能模块在这里使用 E-R 图描述了图书借阅管理系统
23、的数据模型。图 3.2 图书借阅管理系统E-R 图描述了该系统所涉及到的实体以及他们之间的关系。具体结构如图图 3.2。图 3.2 系统 E-R图3.2逻辑结构设计图书信息表主要用于存储图书馆中所藏图书的相关信息,其中的相关信息是在图书入库时由操作员进行添加完善,此表主要用于读者和图书管理员对馆中图书的查询,系统用户根据图书的某个属性进行查询,便可得知图书的其他相关信息,其中图书所在书架属性是便于读者借阅时对图书的寻找,图书价格是在读者不慎将图书遗失时对遗失图书进行赔偿的依据。图书管理系统数据项描述如下:表 3.1 tb_book表属性名 数据描述 数据类型 是否为空 备注b_id 图书在馆编
24、号 ISBN Varchar(20) 否 主键b_name 书名 Varchar(20) 否b_byname 别名 Varchar(20) 是b_version 版本 smallint 是b_author 作者 Varchar(20) 否6b_press 出版社 Varchar(20) 否b_type 图书类别 Char(10) 否b_pdate 出版日期 Date() 是b_indate 进馆日期 Date() 否b_num 在馆数量 int 否b_intro 简介 Varchar(200) 是b_price 价格 Varchar(50) 否借阅者信息表的设计是为了用户管理员对借阅者进行管理
25、,其中读者 ID,不同类型证件的号码都是唯一的,是借阅者在借阅图书时需要输入对读者身份进行识别的信息,读者邮件电话等信息室为了与读者进行联系,读者类型信息决定了读者一次性可借阅的图书的数量,注册时间可用于查询计算读者身份有效的期限,操作员是为了便于对信息才操作的查询。表的具体结构设计如下:表 3.2 tb_user表属性名 数据描述 数据类型 是否为空 备注u_id 用户编号 Char(10) 否 主键u_name 真实姓名 Varchar(10) 否u_sex 性别 男或女 否u_class 班级 Varchar(20) 是u_dept 学院 Varchar(20) 是u_tel 电话号码
26、Numeric(11) 是u_job 工作状况 Char(10) 是u_mailbox 邮箱 Varchar(50) 否u_birthday 生日 Date() 否u_login 登录名 Varchar(20) 否u_date 创建日期 Date() 否u_type 用户类型 Useradmin,reder,bookadmin,recordadmin 否u_picurl 用户照片 Varchar(50) 否u_password 用户密码 Varchar(20) 否 初始 1此表的设计是为了对不同身份的读者进行分类方便读者的管理,其中可借阅图书数量的属性设定,是根据读者需求的不同对起权限进行的设
27、置,用于规定不同类型读者一次可借阅的图书数量,表的具体结构设计如下:表 3.3 tb_record表属性名 数据描述 数据类型 是否为空 备注u_id 用户编号 Char(10) 否 外键b_id 图书编号 Varchar(20) 否 外键主键borrow_date 借阅日期 Date() 否borrow_num 借阅本数 int 否 如还书本书借书则错误,如添加用户新用户注册登陆名:17* 登录密码:* 真实姓名:* 性别:男女班级:学院:* 电话:*不超过 11 位的数字 邮箱:* 出生年月:18createSelect(1);注册类型:读者 图书管理员 用户管理员 借阅管理员 19附录 B新书信息添加代码:图 书 名 称:* 图 书 别 名:图 书 版 次:【格式:数字】作 者 姓 名:出 版 发 行:图 书 类 型:图 书 价 格:出 版 日 期:20createSelect(1);图 书 数 量:*图 书 简 介:21附录 C图书检索功能的实现代码:检索图书检索图书 书名:作者:关键字:22附录 D图书借阅功能模块的实现代码:?借阅管理你的位置 借阅管理23借阅管理 图 书 编 号:* 读 者 编 号:* 图 书 数 量:* 操 作 类 型:借书 还书 24