文档库 最新最全的文档下载
当前位置:文档库 › php图书馆管理系统毕业论文

php图书馆管理系统毕业论文

文华学院

毕业设计[论文]

题目:图书馆管理系统

学生姓名:胡志广学号: 120171011307 学部(系):信息科学与技术学部

专业年级: 2012计算机应用技术

指导教师:陈艳职称或学位:

200 年月日

目录

摘要..................................... 错误!未定义书签。

1.前言 (6)

1.1研究背景 (6)

1.2数据库简介 (6)

1.3开发环境简介 (7)

1.3.1 PHP概述 (7)

1.3.2 MYSQL概述 (8)

1.3.3 PHP+MYSQL组合 (8)

1.4文本工作 (8)

2 需求分析 (10)

2.1系统需求 (10)

2.2需求分析 (10)

2.3系统功能分析图 (11)

2.4系统模块组成 (12)

2.4.1 系统功能模块 (12)

2.4.2 功能模块的实现 (13)

3 总体设计 (15)

3.1系统结构图 (15)

3.2.1 系统设计目标 (15)

3.2.2 总体设计 (16)

3.3数据库设计 (18)

3.3.1 系统数据分析 (18)

3.3.2 系统E-R图 (18)

3.4数据流图 (20)

3.5数据字典 (22)

3.5.1 图书信息表 (22)

3.5.2 图书分类表 (23)

3.5.3 图书状态表 (23)

3.5.4 图书借阅信息表 (23)

3.5.5 预定图书信息表 (24)

3.5.6 图书评价信息表 (24)

3.5.7 用户信息表 (25)

3.5.8 用户权限信息表 (25)

4 设计思想与实现 (26)

4.1用户登陆模块 (26)

4.2主界面模块 (28)

4.3检索功能 (28)

4.4添加功能模块 (29)

4.5修改功能模块 (31)

5 系统测试与运行 (34)

5.1系统运行环境 (34)

5.2系统测试 (34)

5.2.1 测试目的 (34)

5.2.2 测试方法 (34)

5.2.3 测试结论 (34)

6 结束语 (36)

参考文献 (37)

摘要

当今,很多的一些图书馆管理系统已经在被人们所使用,例如一些高校的图书管理系统和一些企业、国家级图书管理系统。对于企业来说,特别是一些比较小的企业并没有完善的图书馆管理系统。而且目前,大部分企业图书管理基本上是停留在人工管理的状况。随着企业渐渐发展,一些企业越来越重视企业人才的教育培养,企业的图书管理系统也会越来越壮大。而电脑管理系统也逐渐的取代了人工管理。

这次的设计主要是针对现在企业存在的状况,把计算机信息管理应用到企业图书管理里,根据企业的特点,在现有的社会、学校图书管理系统的基础上,改善技术、增加创新,建立适合企业的独特的图书管理系统,提高企业图书馆管理系统功能的多样性,使一些管理功能能够快捷的实施。基于 WINDOWSXP 开发研制,结合B/S图书管理系统的要求,对MySQL数据库管理系统、SQL语言原理、PHP应用程序设计,以及对PHP+MySQL技术的深入学习和应用,完成了企业对图书管理系统的需求分析、功能模块划分和分析,然后设计出数据库和应用程序。设计中充分利用PHP5、MySQL5数据库技术的强大功能,提高了编程效率和系统可靠性。

全文主要分六章来分析。第一章介绍了课题研究背景和开发环境。第二章则对课题进行需求分析。第三章和第四章是本文的主要部分,是整个系统的设计与实现。在第五章说明系统的环境与测试。最后一章就是对完成课题的总结。

关键词: 图书管理;数据库技术;数据库; PHP; MySQL;

1.前言

1.1研究背景

随着时代的发展,人类已进入信息化时代,信息量越来越多,信息系统起到的作用也越来越大。在这种条件下传统的人工的图档管理系统显得十分的落后而且效率低下,尤其在信息数据查询方面效率较低。而且图纸档案数量越来越多,管理难度已经远远超过人的能力范围。为了适应现代社会的发展需要,许多事务都由电脑来管理,从而提高了信息管理的效率。而随着企业的发展,企业内部图书馆图书信息量也逐渐增大,现在的企业图书管理系统也慢慢的用电脑来处理,但是由于企业的图书管理与其他的图书管理系统有些差别,企业对于图书管理系统提出了新的要求,而现在社会使用的图书管理系统并不能完全适合企业的图书管理。本文介绍在网络环境下提出实现图书管理、资源共享的基本目标,从而推动迈向数字化图书馆的步伐,并阐述系统结构设计和功能设计,形成一个整体自动化管理模式。

建立一套有效的图书管理系统,可以使企业减轻工作,将工作系统化、科学化、规范化,提高图书馆信息管理的工作质量和工作效率。

1.2数据库简介

数据库作为计算机科学的重要分支,也是数据管理的最新技术。随站信息时代的来临,现在社会的信息资源管理是越来越复杂,管理也越来越难,但信息管理也越来越重要,而数据库是信息系统的核心和基础技术。数据库是按照数据结构来组织、存储和管理数据的仓库。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展越来的。数据库解决多用户、多应用共享数据的需要,使数据库尽可能多的应用于服务。

数据库系统中,数据具有整体的结构化,而且存取的方式很多很灵活,数据的存取能够细到数据项,因为数据是面向整个系统的。同时,数据库系统可以大大减少数据重复储存,节约存储空间。

由于数据是面向整个系统,是具有结构的数据,所以数据不仅可以被多个应用共享使用,而且可以容易的增加新的应用,这就使得数据库系统收缩性大,易于扩充,可以适应各种用户的要求。也就是数据库中的数据具有独立性,包括物理独立性和数据独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的,这样当数据的物理存储改变了,应用程序不用改变。

数据独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,应用程序不用改变。数据的独立性,把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改[2]。

1.3开发环境简介

该企业图书管理系统是利用PHP+MYSQL进行开发的。系统的开发是用堪称Web数据库黄金组合的PHP/MySQL,PHP是一个类似微软ASP的服务器端的嵌入式超文本处理语言,是建立动态网站的强大工具。而MySQL是一个轻型SQL数据库服务器,可运行在多种平台上,被认为是建立数据库驱动的动态网站的最佳产品。PHP、MySQL和Apache是Linux平台网站的最佳拍档。不过由于我们这次团队对Linux的掌握还不够熟练,因此本次设计还是在Windows XP上进行。

1.3.1 PHP概述

PHP 是一种 HTML 内嵌式的语言 (类似 IIS 上的 ASP)。而 PHP 独特的语法混合了 C、Java、Perl 以及 PHP 式的新语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。

PHP是一种服务器端的、跨平台的技术。PHP是一种服务器端解释的脚本语言,PHP代码在服务器一端被解释转变成普通的HTML页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。而PHP的跨平台性意味着PHP可以运行在大多数操作系统上,包括Windows/UNIX(及其许多变体)和Macintosh。对于在一台服务器上编写的PHP脚本,通常不用修改或者只做很少的修改即可在另一台服务器上工作。

PHP支持Internet开发的一些前沿技术。这些技术包括身份认证、XML、动态图象生成、WDDX、共享内存,以及动态PDF文档等等,不一而足。如果您还不满意的话,PHP是很容易扩展的,所以只要您有编程能力,您尽可以自己大展身手一番。

A.PHP功能概述

PHP在Internet上支持相当多的通讯协议(protocol),而且PHP对支持多种数据库,例如DBA、MySQL、Oracle、MSQL、Microsoft SQL Server、dbase等。

除此之外,用 PHP 写出来的 Web 后端 CGI 程序,可以很轻易的移植到不同的系统平台上[7]。

B.为什么用PHP

这个系统使用PHP进行开发原因是:除了PHP强大的功能外,在开发动态Web站点时,与其他可选技术相比,PHP更好、更快而且更易于学习。PHP有优秀的性能,与几乎每一种数据库的紧密集成、稳定性、可移植性,以及由于其可扩展性而得到的几乎无限的特性集。所有这些都是免费的(PHP是开源技术),并且非常易于学习。

而且,PHP自从推出以来,其用户数量呈指数级增长,并且超过ASP成为今天使用的最流行的脚本语言。它是Apache(最常用的Web服务器)必需的模块[1]。

1.3.2 MYSQL概述

MySQL是最流行、最佳的开源数据库。MySQL是一个小巧灵珑的数据库服务器软件,对于小型(当然也不一定很小)应用系统是非常理想的。除了支持标准的ANSI SQL语句,它还支持多种平台,而在Unix系统上该软件支持多线程运行方式,从而能获得相当好的性能。对于不使用Unix的用户,它可以在Windows NT 系统上以系统服务方式运行,或者在Windows 95/98系统上以普通进程方式运行。像PHP一样,MySQL具有很好的性能、可移植性和可靠性,并且易于学习,与PHP 一样MySQL是开源应用程序,所以它几乎也是免费的。

1.3.3 PHP+MYSQL组合

系统的开发是利用PHP和MySQL的组合。这两样东西加在一起,对于开发数据驱动的网站这项工作而言,真是最佳组合。其实用不着我多费唇舌解释。一项由Netcraft组织的非官方调查显示,应用PHP的主机数目由1998年6月的7,500台跃升至1999年3月的410,000台。这两种软件的组合还在Webcon98大会上赢得了年度数据库产品大奖,还得了一座漂亮的奖杯。

除了免费这一点(当然,MySQL也有一些使用许可方面的限制),PHP+MySQL 的组合还可以跨平台运行,这意味着您可以在Windows上开发,然后在Unix平台上运行。另外,PHP也能作为标准的CGI进程来运行,此时它是一个独立的脚本解释器,或者是Apache的一个嵌入模块[7]。

1.4 文本工作

功能模块包括:

●主界面设计

●用户登陆模块

●创建新用户

●搜索用户●更新用户●删除用户

2 需求分析

2.1 系统需求

企业图书管理系统使基于任意操作系统上的,通过对目前存在的大量的学校或社会上图书管理系统的分析和总结,然后根据企业的特点,研究一套合适于企业内部的图书管理系统。系统要求有优良的可视化图形操作界面,大力提高系统的可操作性和交互性,尽量减少操作员的负担,让他们更方便、更快捷、更简单的进行操作。还有要求系统有很强的稳定性、可维护性、扩充性、可移植性。同时,实现控制各种用户系统权限,从而保证系统的安全性。

2.2 需求分析

根据系统分析,图书管理系统的要求如下:

1.系统需求分析:

(1)能够输入图书的综合信息和进行新书添加、现有图书信息修改以及删除;

(2)能够实现对图书信息的查询功能;

(3)能够实现读者借书、还书、写书评以及预定图书的操作;

(4)能够实现对用户信息的新建和对已建用户信息的修改以及删除;

(5)能够实现用户对自己密码和某些信息进行修改;

(6)能够实现对用户的查询功能;

(7)能够进行借阅历史的查询功能;

2.系统性能要求:

(1)系统安全、可靠;

(2)功能齐全;

(3)操作方便、界面友好;

(4)易于维护和扩充。

3.系统的功能分析:

(1)密码设置:每个操作人员均有自己的密码,可以防止非法人员进入本系统;又因每个人的权限不一致,故可以防止越权操作。

(2)图书管理:存放图书的全部数据,对每一本图书的信息进行管理。

包括对图书信息的添加、修改、删除、查询等操作。

(3)用户管理:存放图书馆用户的全部数据,对每一位用户的档案进

行管理。包括对用户信息的添加、修改、删除、查询等操作。

(4)读者日常操作:普通用户(即读者)可以查看所有图书信息。

(5)资料维护:为了存放图书信息、读者档案的全部数据,本系统将每一本图书和每位读者的信息进行管理。系统维护包括对各种表

记录的修改、删除、添加等操作。

(6)系统查询:可以按图书ID、用户ID等相关信息进行查询。

2.3 系统功能分析图

下图是列出系统不同用户具有不同的功能权限。

2.4 系统模块组成

2.4.1 系统功能模块

根据企业的实际需要,图书管理系统需要实现的功能主要有四大块:“登陆模块”、“图书管理模块”、“用户管理模块”、“日常工作管理模块”。其中日常工作管理和图书、读者基本资料是整个系统的核心。

2.4.2 功能模块的实现

A.登陆模块

登陆模块是对不同用户的身份进行验证,用户包括图书管理员、用户管理员、普通用户三种,用户点击“登陆”按钮时,系统从数据库中取出该用户的权限,验证用户属于哪种类型身份然后启动该用户所具权限的主模块。

B.图书管理模块

a添加图书:图书馆购进新书,由图书管理员进行对图书信息的录入,以实现有关图书的其他操作。在数据库插入一条新图书记录,包括图书ID、

图书名称、作者、出版社等基本信息。

b检索图书:实现对图书的查询,查询结果会显示图书的详细信息,不同权限的用户组都具有该权限。检索图书可以通过不同的方式,包括输入

书名、作者、种类等单一的条件,也可以通过组合的条件。

c修改图书信息:本模块是实现图书管理员对图书信息的修改。

d删除图书:当某种图书价值不怎么大,可读性不是很好时,会被考虑从图书馆中去除,图书管理员通过查询到该图书的信息,就可直接删除。C.用户管理模块

a建立新用户:由用户管理员建立各种用户(包括图书管理员、用户管理员、普通用户),在建立过程中赋予用户不同的权限,权限决定用户登陆

后进入不同的主功能模块。在数据库插入一条新用户记录,包括图书用

户ID、用户姓名、用户权限、联系方式等基本信息。

b检索用户:用户管理员查询某个用户的详细信息。检索用户可以通过不同的方式,可以输入单一的条件,例如:“用户ID”、“用户姓名”等,

也可以输入组合的条件进行查询。

c更新用户信息:当某个用户的实际权限改变,或者其他信息发生改变,就可以对该用户的信息进行修改,通过简单的方式就可以修改该用户在

这系统上的权限。

d删除用户:当某个员工离开工作,用户管理员通过检索直接删除该用户信息。

D.日常工作管理

a借阅图书:记录普通用户借阅一本图书时的情况以及记录被借图书的信息。在数据库记录一条借书记录,借书记录包括读者ID、读者姓名、图

书ID、图书名称、借书日期、还书日期。同时添加这条借阅记录到读者

借阅历史纪录中,以及修改该图书的借阅状态。

b归还图书:删除普通用户借阅图书的情况以及记录归还图书的信息。输

入读者ID和图书ID,检索到到相应借阅记录,点击删除,将该借阅记录从数据库中删除,然后添加一条还书记录。同时系统修改该读者的借阅历史纪录中相应的借阅情况,以及修改该图书的借阅状态。

c预定图书:实现普通用户预定图书,当某种图书已经被借完时,用户可以预定该图书,从而保证及时知道该书的借阅情况,尽早借到该图书。

此操作在数据库中插入一条预定图书记录,记录包括预定图书ID、读者ID、读者Email。

d查看借阅历史记录:包括普通用户查看自己的借阅历史记录和图书管理员查看任意图书的借阅历史记录。读者可以直接查看自己的所有借阅情况。这样可以提醒用户借阅了几本书,有哪些书,什么时候该归还。而图书管理员根据相应的借阅信息进行所需查询,可输入图书ID、读者ID 查询、借书日期、还书日期等进行查询。

e修改个人信息:普通用户都可以对自己的密码进行修改。要求输入两遍原始密码和输入新密码,系统验证无误后改变数据库里面相应的记录。

3 总体设计

3.1 系统结构图

企业图书管理系统结构图:

图3.1 系统结构图

3.2 总体功能设计

3.2.1 系统设计目标

系统总的设计是为了达到以下目标:

系统开发的总目标是实现企业内部图书借阅管理的系统化、规范化、科

学化和自动化,从而达到提高企业图书管理效率的目的。

●系统符合图书馆信息管理的要求,满足日常管理工作的需要,包括借书、

还书、预定图书、写书评等日常操作,并且达到各种操作过程直观、简

单、方便、实用等要求。

●系统能够对图书进行录入,就是将图书的基本信息(如:书名、作者、

出版社等)存入数据库,供以后查询等操作。

●系统能够注册系统用户,就是记录操作系统的各种用户的信息(如:工

号、名字、联系方式等),供以后的用户管理操作。

●系统有较好安全性,就是系统要有安全保密措施,防止数据的丢失、错

误等情况出现。

●提供多种查询方法,对图书和图书馆用户信息的查询可以通过不同的方

式查询,包括具体的查询和模糊的查询、单值的查询和多值的查询。

●对图书和用户的数据提供方便修改。

●能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同

的功能权限。

●提供较为完善的差错控制与友好的用户界面,尽量避免误操作。

3.2.2 总体设计

A.系统安全性

对于计算机系统的安全性的保证和实现是一个庞大、复杂、面广的系统工程。每一个计算机信息系统的安全都是及其重要的。安全问题的核心是人,必须以人为核心进行安全管理。采用各种先进的安全技术,使系统免受非法攻击,排除没有访问权限的使用者窃取机密信息,确保系统安全可靠的运行。

针对企业图书管理系统的特点,为了加强其安全性,系统采用一定的保密措施。

a口令识别

口令识别是一种低成本,易实现的用户识别技术。在计算机系统内广泛的使用,在口令识别机制中,计算机系统给每个用户分配一个用户标识和一个口令。用户标识唯一确定一个用户是公开的;口令用于证实用户,是保密的,显示为*号。

b口令存取

系统要识别每个用户的口令,就必须把每个用户的口令存放起来,形成口令表,通常以文件或数据库形式存放。如果以明文的形式存放,则很容易被熟悉系统的人偷取,为了提高基于口令的身份识别方案的坚强度,应该在口令方案中引

入加密机制。

c设置用户组

系统用户分为三种不同用户组,系统通过验证获取用户身份,同时赋予该用户相对应的用户组中的所有权限,这样保证系统的正确操作,防止出现数据干扰、丢失。

B.系统高效性

图书管理系统的目的就在于减少劳动,提高效率。对于计算机系统的高效性关键是操作的方便和反映的速度。系统要提供简单、直观的操作界面,使一切功能一目了然,减少状态的跳转,减少繁琐,这样让操作员很快的清楚系统操作,不会因为复杂而混淆。

C.系统信息管理

本系统的设计主要是为了方便企业图书馆的管理,主要是完成对图书馆图书信息的管理和于其关系密切的读者信息和读者的动作的管理,所以整个系统的信息录入和维护是相当重要。由于图书管理系统是一个信息系统,信息的录入和维护的工作量很大,这就要求在操作上提供更为简便的处理,使系统用户能在较短时间内完成大量的录入工作。

1.图书或用户的录入功能:

(1)对书库或用户信息库中已经有的信息,但需要对某个存在的信息进行修改时,只要通过简单的条件检索出该信息(通过该图书ID

或图书名检索出该图书;通过用户ID检索出用户)。由于数据库

已有这个信息,操作员只要简单修改一些信息,然后保存就完成

录入工作。

(2)对书库或用户信息库还没有的信息,系统将给予明确的提示信息,使操作员概念清晰,给操作员的录入工作带来方便,加快录入工

作。

2.图书或用户的查询功能

(1)如果不输入查询条件,查询功能就相当于浏览的功能,系统直接分页显示所用相应的详细信息。

(2)如果输入查询条件,该设计可以对在库或不在库的图书或用户进行查询,如果数据库存在该信息,即显示详细情况,如果不存在,

则系统给出提示信息;同时查询的条件可以多样灵活,即可单值

查询,也可多值查询。

3.图书或用户的删除功能

系统对信息的删除功能都是比较直接方便,只要查询到相应的信息就可以直接删除,使用户操作简单。

3.3 数据库设计

数据库是计算机信息系统的核心和基础。一个信息系统的各个部分能否紧密地结合在一起以及如何结合,关键是数据库。因此只有对数据库进行合理地逻辑设计和有效地物理设计才能开发出完善而高效地信息系统。在整个系统地开发过程中,数据库的设计是非常重要,一个设计地较好的数据库可以减少数据冗余,简化数据修改过程,实现系统高效率[6]。

3.3.1 系统数据分析

通过对图书管理系统的分析,可以得出该系统涉及两类实体:图书、系统用户(包括普通用户、图书管理员、用户管理员)。这些实体涉及的数据项有:图书:Book ID、Book ISBN、Book Name、Book Author、Book Sort ID、Book Publish、Book Price、Book Describe。

系统用户:User ID、Password、User Right、User Name、Telephone、Sex、Email。

3.3.2 系统E-R图

通过对系统实体数据关系的分析,可以画出如下E-R图:

图3.2 系统E-R图1

图3.3 系统E-R图2

图3.4 系统E-R图3

图3.5 系统E-R图4

3.4 数据流图

以下为数据流图:

相关文档