PHP+MYsql图书管理系统.docx
- 文档编号:8280454
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:48
- 大小:903.08KB
PHP+MYsql图书管理系统.docx
《PHP+MYsql图书管理系统.docx》由会员分享,可在线阅读,更多相关《PHP+MYsql图书管理系统.docx(48页珍藏版)》请在冰豆网上搜索。
PHP+MYsql图书管理系统
摘要
虽然目前很多大型的图书馆已经有一整套比较完善的管理系统,但是在一些中小型的图书馆中,大部分工作仍需由手工完成,工作起来效率比较低,管理员不能及时了解图书馆内各类图书的借阅情况,读者需要的图书难以在短时间内找到,不便于动态及时地调整图书结构为了更好地适应当前读者的借阅需求,解决手工管理中存在的许多弊端,越来越多的中小型图书馆正在逐步向计算机信息化管理转变。
本系统设计实现了基于web的图书管理系统,该系统采用现今比较流行的PHP语言,结合MYsql数据库,实现了图书信息的存储查询等功能。
系统不仅维护方便,节省了图书馆的资源,方便图书馆进行管理图书,本系统主要为图书管理者而设计,为学校和学生提供提供科学化图书管理数据的平台。
系统主要功能包括:
用户的管理,图书的增删,图书的检索等。
关键词:
数据库;PHP;MySQL;数据库技术;图书管理
Abstract
Althoughmanylargelibraryhasasetofperfectmanagementsystem,butinsomesmallandmedium-sizedlibraries,mostoftheworkremainstobedonebyhand,workefficiencyisrelativelylow,theadministratorcan'tunderstandallkindsofbookstoborrowlibrarybooks,readersneedtofoundinashortperiodoftime,noteasydynamicandtimelyadjustthestructureofbooksinordertobetteradapttothereadersoftheloandemand,solvethemanualmanagementexistsmanydisadvantages,moreandmoresmallandmedium-sizedlibrariesaregraduallytothecomputerinformationmanagement.
It’smainfunctionsinclude:
theadministrationofusers,bywhichadministratorscanadd,deleteorrevisetheinformationthroughdifferentsettings;thefunctionofborrowingbooks,bywhichadministratorscanchoosetoborrowbooksornotaccordingtotheretrieval;checkinginformation,bywhichadministratorscancheckthehistoryofborrowingandreturningbooksandrecordsofthosebookswhichareoverdue;checkingthedetailedinformationofbooks,bywhichuserscanfindthedetailsandwhetherit'savailableornotinlibrary.
Thesystemfeaturesinclude:
usermanagement,additionsanddeletionsofbooks,booksearch
Keywords:
Database;PHP;MySQL;DatabaseTechnology;LibraryManagement
目录
1绪论6
1.1研究背景6
1.2研究现状6
1.3研究意义7
2相关技术综述8
2.1PHP技术8
2.2MYSQL数据库9
2.3Apache10
2.4WampServer10
2.5数据库简介11
2.6网页制作工具12
2.7B/S模式12
3需求分析16
3.1系统需求16
3.2需求分析16
3.2.1功能分析16
3.2.2功能描述16
3.2.3可行性分析17
4总体设计18
4.1系统流程图18
4.2数据库设计18
4.2.1数据库概念设计18
4.2.2创建数据库及数据表20
5设计思想与实现31
5.1首页设计31
5.1.1首页概述31
5.1.2首页实现过程33
5.2管理模块设计34
5.2.1管理员模块概述34
5.2.2管理员模块技术分析34
5.2.3系统登录的实现过程35
5.2.4查看管理员的实现过程38
5.2.5添加管理员的实现过程40
5.2.6设置管理员权限的实现过程41
5.2.7删除管理员的实现过程42
5.3图书档案管理模块设计43
5.3.1图书档案管理模块概述43
5.3.2图书档案管理模块技术分析44
5.3.3查看图书信息列表的实现过程44
5.3.4添加图书信息的实现过程46
5.3.5修改图书信息的实现过程47
5.3.6删除图书信息的实现过程48
5.4.1图书借还模块概述49
5.4.2图书借还模块技术分析49
5.4.3图书借阅的实现过程50
5.3.4图书续借的实现过程54
5.4.5图书归还的实现过程56
5.4.6图书借阅查询的实现过程57
6.系统测试63
6.1软件测试概念与方法63
6.2测试内容64
6.3测试结果64
6.3.1登陆测试65
6.3.2添加会员页面65
6.3.3借还书测试66
7.总结68
8.参考文献69
1绪论
1.1研究背景
随着社会的发展和经济的进步,科学技术的飞速发展把人类社会推向了一个崭新的时代——信息时代。
学校是人们学习知识、获取信息的主要场所。
由于我国的教育行业飞速发展,目前各类学校的学生人数与日俱增,随之而来的是学校所拥有的图书越来越多,在这种情况下,对图书的管理和查询以及对借阅者的管理都变得非常困难,利用计算机设计的图书馆管理系统对其进行辅助管理,是一种很好的方法。
图书管理系统的开发和应用,可以提高学校的管理水平以及办公效率,为学校的图书信息的管理提供了一个良好的工具,化简了繁琐的工作模式,从而使得学校的管理更加规范化和科学化。
良好的管理信息系统节省了大量的人力和物力,避免了大量重复性工作。
它作为计算机应用的一部分,使用计算机对图书信息进行管理,有着手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高图书管理的效率,也是学校科学化、正规化管理的重要条件。
1.2研究现状
随着计算机及网络技术的飞速发展,信息自动化的作用也越来越大。
这就使传统的图书管理方式受到了很大的冲击,有关图书的借阅工作部分还是手工管理,工作效率很低,并且不能及时了解图书的种类和读者们比较需求的图书等,不能更好的适应当前读者的借阅要求。
手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。
现今许多学校图书馆已经逐步实现了利用计算机对图书进行信息化管理,但大部分使用的是VB、VC++等系统,这些系统多数使用access数据库,它在并发操作的控制和数据库安全性方面远没有MYSQL强大,不能够进行基于web的管理,即使如此,还有更多的二级学院因经费等各种原因还是延续传统手工管理模式,工作量巨大、存放麻烦、更新困难、不易备份,已不能适应信息化社会的要求。
1.3研究意义
本系统主要适用于二级学院的图书管理,编写本系统是为了达到图书管理工作系统化、智能化、规范化、自动化、科学化,减轻管理人员的工作强度,方便查询与统计,节约时间,从而达到提高图书管理效率的目的。
使用本系统,图书管理人员作为桥梁、导航的作用将变得更为重要,图书管理工作变得更加便利和高效,系统将传统的方式与现代的信息技术相结合,为读者提供更加优质的服务,只有如此,才能有效地提高学校的科研和教学水平。
本系统服务器端采用MYSQL数据库系统和PHP组件来构成整个图书管理系统客户端采用浏览器来实现信息管理的全过程,同时管理员通过浏览器也可以进行远程系统的维护和管理。
本系统选择使用目前比较流行的apache服务器结合mysql数据库使用php语言进行web设计。
2相关技术综述
2.1PHP技术
PHP“PHPHypertextPreprocessor”超文本预处理器的字母缩写,是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到HTML中,尤其适合web开发。
它是一种服务器端的HTML脚本编程语言,是一种简单的、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言。
PHP代码在服务器端被解释转变成普通的HTML页面内容,送给浏览器端,这种模式可使我们用它来完成相当复杂的功能。
它能运行在包括Windows、Linux等在内的绝大多数操作系统环境中,常与免费的Web服务器软件Apache和免费数据库软件MySQL配合使用于Linux平台上,具有较高的性能价格比。
强大的数据库支持目前其支持范围覆盖了包括Oracle,Sybase,MicrosoftSQL,MySQL,Informix、SoliddBase,ODBC,Unixdb,PostgreSQL,AdabasD等在内的大多数常见数据库。
用它编写一个含有数据库功能的网页程序十分简单。
PHP可以编译成具有与许多数据库相连接的函数。
PHP与MySQL是绝佳组合。
你还可以自己编写外围的函数去间接存取数据库。
通过这样的途径当你更换使用数据库时,可以轻松的更改编码以适应变化。
可扩展性就像前面说的那样PHP已经进入了一个高速发展的时期。
对于一个非程序员来说为PHP扩展附加功能可能会比较难,但是对于一个PHP程序员来说并不困难。
面向对象编程PHP提供了类和对象。
基于web的编程工作非常需要面向对象编程能力。
PHP支持构造器、提取类等。
可伸缩性传统上网页的交互作用是通过CGI来实现的。
CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。
解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的web服务器(比如mod_perl,JSP)。
PHP就可以以这种方式安装虽然很少有人愿意这样以CGI方式安装它。
内嵌的PHP可以具有更高的可伸缩性。
2.2MYSQL数据库
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
目前MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限,MySQL不支持视图已经被列入5.1版的开发计划、事件等等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
在数据库的发展历程中曾出现过多种不同形式的数据库系统,但关系型数据库管理系统(RDBMS)以其优越性而被广为采用,象现在几种广泛使用的数据库全为关系型数据库。
同样,MySQL也是关系型的数据库系统,支持标准的结构化查询语言(StructuredQueryLanguage)。
MySQL是C/S架构的服务器服务器端是多线程的,为客户端提供了不同的程序接口和链接库,如C、C++、Java、Perl、PHP、Tcl等,也提供了简单的管理工具,如mysqladmin,mysql等。
目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP)即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。
由于这四个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。
相比较其他系统而言,MySQL数据库可以称得上是目前运行速度最快的SQL语言数据库之一,除了具有许多其它数据库所不具备的功能和选择之外,MySQL数据库是一种完全免费的产品,用户可以直接从网上下载数据库,用于个人或商业用途,而不必支付任何费用。
总体来说,MySQL数据库具同时访问数据库的用户数量不受限制;可以保存超过50,000,000条记录,是目前市场上现有产品中运行速度最快的数据库系统;用户权限设置简单、有效。
2.3Apache
Apache是世界使用排名第一的Web服务器软件。
Apache起初由伊利诺伊大学香槟分校的国家超级电脑应用中心(NCSA)开发。
此后,ApacheHttpd被开放源代码团体的成员不断的发展和加强。
ApacheHttp网站服务器拥有牢靠可信的美誉,已经在全球超过半数的网站中被使用-特别是几乎所有最热门和浏览量最大的网站。
比方说,维基百科网站服务器就是使用Apache的。
刚开始发展时,Apache只是Netscape网页服务器(现在是SunONE)之外的开放源代码选择之一。
慢慢地,它开始在功能和速度超越其他基于Unix的HTTP服务器。
到了Apache2.x的时代,实际效率又比Apache1.x更快,2.x比1.x能同时服务更多的网页连线数。
1996年4月以来,Apache一直是Internet上最流行的HTTP服务器:
1999年5月它在57%的网页服务器上运行,到了2005年7月这个比例上升到了69%。
在2005年11月最风光的时候达到接近70%的市占率,不过在部份拥有大量域名的主机域名商转换为微软IIS平台后,Apache市占率近年来呈现些微下滑。
同时搜寻引擎巨擘Google自己的网页服务器平台GWS推出后(也可说是一种修改版的Apache[3]),再加上nginx、Lighttpd等轻量化网页服务器软件在市场上有一些能见度,这些因素都反应在整体网页服务器市占率的消长,Apache的市占率就随之滑落。
根据Netcraft在2009年12月的最新统计数据,Apache的市占率已经降为53.67%,IIS降为18.26%,谷歌网页服务器13.53%,nginx8.75%。
尽管如此,Apache仍旧是当前互联网市场上,市占率最高的网页服务器软件。
2.4WampServer
WampServer是ApacheWeb服务器、PHP解释器以及MySQL数据库的整合软件包。
免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发。
在windows下将Apache+PHP+Mysql集成环境,拥有简单的图形和菜单安装和配置环境。
PHP扩展、Apache模块,开启/关闭鼠标点点就搞定,再也不用亲自去修改配置文件了,WAMP它会去做。
再也不用到处询问php的安装问题了,wampserver一切都搞定了。
这个软件是完全免费的,可以在其官方网站下载到最新的版本。
本文中使用的版本是WampServer2.0f(发布日期2008年12月16日),其中包括Apache2.2.11,PHP5.2.8,MySQL5.1.30
2.5数据库简介
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。
数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
数据整体性
数据库是一个单位或是一个应用领域的通用数据处理系统,他存储的是属于企业和事业部门、团体和个人的有关数据的集合。
数据库中的数据是从全局观点出发建立的,他按一定的数据模型进行组织、描述和存储。
其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化特征。
数据共享性
数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。
不同的用户可以按各自的用法使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。
数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。
2.6网页制作工具
本系统的开发主要依靠MacromediaDreamweaver8制作动态网页。
MacromediaDreamweaver8是一款专业的HTML编辑器,用于对Web站点、Web页和Web应用程序进行设计、编码和开发。
无论是喜欢直接编写HTML代码的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver都能提供帮助良多的工具,丰富Web创作体验。
利用Dreamweaver中的可视化编辑功能,可以快速创建Web页面而无需编写任何代码。
可以查看所有站点元素或资源并将它们从易于使用的面板直接拖到文档中。
可以在MacromediaFireworks或其它图形应用程序中创建和编辑图像然后将它们直接导入Dreamweaver,从而优化开发工作流程。
Dreamweaver还提供了其它工具,可以简化向Web页中添加Flash资源的过程。
除了可帮助生成Web页的拖放功能外,Dreamweaver还提供了功能全面的编码环境,其中包括代码编辑工具(例如代码颜色、标签完成、“编码”工具栏和代码折叠);有关层叠样式表(CSS)、JavaScript、ColdFusion标记语言(CFML)和其它语言的语言参考资料。
Macromedia的可自由导入导出HTML技术可导入手工编码的HTML文档而不会重新设置代码的格式,可以随意用首选的格式设置样式来重新设置代码的格式。
Dreamweaver还可使用服务器技术(如CFML、ASP.NET、ASP、JSP和PHP)生成动态的、数据库驱动的Web应用程序。
如果使用XML数据,Dreamweaver也提供了相关工具,可帮助创建XSLT页、附加XML文件并在Web页中显示XML数据。
Dreamweaver可以完全自定义。
可以创建自己的对象和命令修改快捷键甚至编写JavaScript代码,用新的行为、属性检查器和站点报告来扩展Dreamweaver的功能。
2.7B/S模式
在因特网上,万维网即Web以B/S(Browser/Server)形式运行,网页以文件形式存储在服务器中。
万维网与因特网是有根本区别的,万维网只是因特网提供的服务之一,是存储在全世界Internet计算机中、数量巨大的文档的集合,是一种图形化的和易于导航的与平台无关的超文本信息系统,它具有分布式、新闻性、动态、交互的特性。
Web服务器,就是在因特网上昼夜不停地运行某些特别的程序(如服务器程序等)的计算机,使得世界各地的用户可随时对其进行访问或获取其中的网页。
网站开发采用的是PHP、JavaScript、MySQL、Apache组合模式在该组合中充分考虑了各种技术原有的优点。
B/S模式中PHP和JavaScript作为实现交互的开发工具,起到了连接纽带的作用。
C/S和B/S是当今世界开发模式技术架构的两大主流技术。
C/S(Client/Server)结构,即客户机和服务器结构。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。
目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件。
因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。
这也就是目前应用系统的发展方向。
传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都需要特定的软件支持。
由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。
而且代价高,效率低。
B/S(Browser/Server)结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。
这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。
以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。
它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
(1)C/S服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQLServer。
客户端需要安装专用的客户端软件。
(2)B/S客户机上只要安装一个浏览器(Browser),如NetscapeNavigator或InternetExplorer服务器安装Oracle、Sybase、Informix或SQLServer等数据库。
用户界面完全通过浏览器实现,主要事务逻辑在服务器端实现。
浏览器通过Web服务器同数据库进行数据交互。
B/S系统的三层体系结构在B/S的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。
B/S结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
在Browser/Server三层体系结构下,表示层(Presentation)、功能层(BusinessLogic)、数据层(DataService)被分割成三个相对独立的单元:
第一层--表示层:
Web浏览器
在表示层中包含系统的显示逻辑,位于客户端。
它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。
第二层--功能层:
具有应用程序扩展功能的Web服务器
在功能层中包含系统的事务处理逻辑,位于Web服务器端。
它的任务是接受用户的请求
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PHP MYsql 图书 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)