图书管理系统

摘要
项目总体功能描述:此项目为模拟图书馆的借阅系统,通过该系统可以查询目前图书的基本信息,图书是否在馆或者图书被谁借走,查询个人基本信息,借阅情况,同时也可以通过该系统进行图书的借阅操作。本系统的管理员跟用户还可以根据系统的内容以及优缺点提出建议。该项目采用PHP+MySQL以及前后端结合实现简单的增加,删除,修改,查找图书等功能,具体细分为管理员跟普通用户,功能描述如下:
• 用户
o 查询个人信息,修改个人信息,借阅情况
o 查询图书状态(图书详情、图书是否在馆)
o 对图书进行借阅操作,对已借的图书进行还书操作
o 留言
• 管理员
o 查询管理员个人信息,修改管理员个人信息,借阅情况
o 查询图书状态(图书详情、图书是否在馆)
o 查询用户状态,查询指定用户借阅情况。删除指定用户
o 对图书进行借阅操作,对已借的图书进行还书操作
o 留言

PHP和客户端的JavaScript 不同的是,PHP 代码是运行在服务端的。

如果在服务器上建立了如上例类似的代码,则在运行该脚本后,客户端就能接收到其结果,但他们无法得知其背后的代码是如何运作的。甚至可以将web服务器设置成让PHP来处理所有的HTML文件,这么一来,用户就无法得知服务端到底做了什么。

  1. 项目简介
    项目名称:图书馆管理系统
    1.1. 项目运行环境
    服务器:wampserver
    编译环境:Adobe Dreamweaver CC 2018,viscode等集成环境
    浏览器:谷歌浏览器,火狐浏览器,QQ浏览器等

1.2.需求分析
设计并实现一个将各种图书管理的服务功能结合起来的管理信息系统十分重要,可以有效地节约资源并且有效的存锤、更新和查询信息,提高工作和服务的效率。图书管理系统对于现代图书馆而言,是能否发挥其教学科研的作用的至关重要技术平台。对于读者和图书管理员来说,是能否方便快速获取信息的关键。所以,图书管理系统应该能够为用户提供充足的信息和快捷方便的操作手段。
2.1.PHP概述
PHP是一种广泛使用的开源的脚本语言,可嵌入到HTML中,尤其是对于Web开发。它是一种服务器端HTML的脚本语言,是一种简单的、高效的、面向对象的、解释的、健壮的、安全性非常高的动态的脚本语言
2.2. MYSQL概述
MySQL数据库是一个小型关系型数据库管理系统。由于 MySQL体积小、速度快和低成本,尤其是在开放源代码的特点,目前 MySQL被广泛用于中小型网站
2.3.Apache服务器
目前世界使用排名第一的web服务器软件就是 Apache,Apache起初由NCSA(伊利诺伊大学香槟分校的国家超级电脑应用中心)开发。此后,随着Apachehttpd的开源社区的成员不断发展和加强,Apache的HttpWeb服务器有可靠的声誉,有超过一半正在使用它的网站,特别是几乎所有最流行的大网站。例如,维基百科使用的就是 Apache服务器。
2.4.Wamp Sever集成开发环境
Wamp Server是 Apache服务器,PlHP解释器和 MySQL数据库集成软件包。WAMP是完全免费的,在官网可以下载到最新的版本。其中包括 Apache2.2.17,PHP5.3, MySQL5.5.8
2.5.B/S模式
B/S( Browser/Server结构)结构即浏览器和服务器结构。它是随着 Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过基于PHP+ MYSQL的图书馆管理系统,通过www浏览器来实现,极少部分事务逻辑在前端( Browser)实现,但是主要事务逻辑,在服务器端( Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。

  1. 项目功能模块介绍
    2.1. 登录页面设计
    3.1.1.注册页面
    该项目注册页面采用html+JavaScript实现了用户注册的静态界面,用户根据提示填写账号,密码,昵称,确认密码,然后提交申请,既可以完成注册,接下来你就可以用此账号登录该系统。后面的提交功能以及账号注册主要采用PHP+MySQL来实现交互,这是次页面的最主要技术,没有它的话,你的项目只是一个简单的静态页面。
    3.1.2.登录页面
    该页面主要的模块就是使用HTML+Javascript+PHP+MySQL来搭建一个交互式的登录页面,与其他网站类似,他的功能模块就是在注册号账号的基础上,用注册好的账号能够成功登录进入系统。
    2.2. 系统主页面
    3.2.1.借书还书
    该页面的模块比较多,包括图书的借还功能,留言功能,当然这个页面的主要交互功能是用户借书跟还书,同样采用HTML+JavaScript+CSS构建一个静态页面,PHP+MySQL实现前后端交互,让用户顺利完成借书跟还书的操作,并将借还书的记录录入数据库,让管理员能查看到用户的操作记录。
    此模块是基于MySQL的基础上完成的,没有数据库,我们是做不了任何操作的。
    3.3.增删查改
    管理员则可以查看用户留言,所借跟还的书名称,当然管理员的最主要的功能还是实现图书的增加,删除,查找,修改等功能,这是一个系统具有的最简单但是也是最重要的功能,没有此功能,系统肯定是不完整的,甚至不能成为一个系统。
    此模块同样基于数据库,首先要往已经建立好的数据表里添加图书信息,然后才能实现接下来的操作,一步接着一步来完成。
    3.2.注销功能
    注销功能,就是指退出当前账号,这里采用cookies跟session来记录用户的基本信息,但是也只能是一段时间,具体多久要看开发人员写的代码,过多长时间信息就会自动清除,跟我们平时登录有个网站一样,初次登录会让你手动输入信息,系统会提示你是否记住此信息,是的话就会记录你的信息,下次再进入这个网页就会免登录,也就是直接进入系统,这个功能代码量很少,但是发挥着比较重要的而作用。注销就是在这个基础上退出账户,重新回到登录界面。当然这个也是PHP+MySQL实现的交互。
    2.3. 留言
    此功能是对所有用户开放的,但是管理员可以查看普通用户的留言内容,以便作者优化系统,但是普通用户肯定是看不到管理员的留言内容,所以事先这个功能的主要难点就是在管理员跟普通用户的区分出来。
    4.出现的问题及解决办法

4.1.网页乱码
设计的网页中,有部分网页是不能正常显示的,也就是出现一些我们看不懂的东西,这是网页的编码问题,比如文件b_borrow.php文件中,需要在头部添加header(“Content-type: text/html; charset=UTF-8”);代码,网页则可以正常显示,同样的问题还有delete.php文件,examine_mes.php文件,into.php文件,into_again.php文件,borrow.php文件,index.php文件,mes_into.php文件,remand.php文件这几个都是需要添加上面那串代码,否则也会出现乱码。
4.2.插入图片不能正常显示
插入图片时,在html中编写网页的时候, 将外部的css样式表链接到网页中,其它像:background-color . padding , margin 等都可以正常起作用,但就是background-image不起作用,而且有时一气之下将background-image:url(“”绝对路径“”) ;就可以显示了,但是我们非常不提倡这种绝对路径的写法,那么出现这个现象的原因到底是什么呢?
注意::在css样式表中写的background-image:url(图片的路径为相对本css文件的路径,而不是我们通常认为的相对加入css样式的网页的路径);例如:在当前目录下有 index.html 和 css文件夹(里面包含:css.css) 和 images文件夹(里面包含top.jpg)
错误的认为和写法:background-image:url(“images/top.jpg”); ----->>错误的认为图片的路径应该是针对index.html网页来说,
正确的认为和写法:background-image:url("…/images/top.jpg");
----->>图片的路径应该写的是相对css.css文件的路径

4.3.在浏览器中登录时闪退
这个项目写的代码可能不使用所有的浏览器,刚开始在谷歌登录,但是会出现一直重复让我们登录的情况,后面通过查找资料才知道,这个多数是由于网页的编码问题不符合这个浏览器的编码机制,之后换了个浏览器,然后在一部分文件中添加了header(“Content-type: text/html; charset=UTF-8”);这段代码,然后这个问题就解决掉了。
4.4.数据库问题
我现在使用的服务器是wampserver,该服务器自带数据库管理工具,但是随着代码的不断优化,目前的5.6.17版本有一些落后了,继续使用则会导致网页乱码,数据库不能正常使用等问题,这时候我们可以换PHPstudy服务器,这个服务器兼容性比较好,可以自由切换版本,这就很适合我们调试代码了,不会因为版本跟代码不兼容而导致出错。

5.总结
本文提出的基于WB的图书管理系统完成了借书,还书,查询图书,管理借书证和管理员帐户设置等主要功能,本系统是基于B/S模式,其后台部分完全实现借书与还书的手续操作与对图书和人员的管理功能,系统界面简单、易用,任何人都可以在短时间内学会使用该系统,在前台部分,创新设计的WAP图书查询部分,不仅大大方便了同学们查询图书,而且使得系统多样化,多元化,具有有很强的扩展性。由于是由PHP+HTML+JavaScript语言编写,移植性也很好在技术方面,通过此项目的开发,本人对基于 Browser/ Server即浏览器/服务器模式的多层体系结构的JSP技术有了一定的实战经验,同时对 PHP的使用有了深刻的理解。将不同复杂的数据库操作划分为独立的模块封装于Bean中,提高了系统的安全性和可移植性对于不足之处在于管理员权限没有细分,有条件的话可以采用给予角色的分配方法来分配权限。WAP部分功能相对于简单,可以继续加入留言板,图书续借,公告等实用功能。
本次项目用了近一个月时间,中间碰到了很多问题,通过跟老师交流和同学的帮助,这些问题都顺利解决了,再次感谢老师的帮助,项目虽然很简单,但是我会继续探索,学习,争取之后做一个更加完美的系统。

6.参考文献
《PHP web程序设计与项目案例开发 微课版》 马石安 魏文平/编著
《网页设计与制作 项目教程》黑马程序员/编著
博客 gethub

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

广西千灵通网络科技有限公司

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值