基于php5的图书馆管理系统的设计与实现毕业论文Word下载.docx
《基于php5的图书馆管理系统的设计与实现毕业论文Word下载.docx》由会员分享,可在线阅读,更多相关《基于php5的图书馆管理系统的设计与实现毕业论文Word下载.docx(40页珍藏版)》请在冰豆网上搜索。
系统分析分为可行性分析和需求分析。
2.1可行性分析
2.1.1经济可行性分析
本系统开发要耗去一定的时间,而所用的开发工具和软件基本是免费的。
由于系统能够在未来一段时期稳定地发挥作用,开发图书馆管理系统,对于管理图书和管理读者,图书的借阅,图书的预定都有很大的帮助。
由此可见,开发此系统在经济上是完全可行的。
2.1.2操作可行性分析
如今的大学生大部分都有了计算机,硬件成本不断的下降,计算机价格不断降低。
我的这套系统是利用自己的计算机加免费编程软件来开发的,开发出来的系统具有友好的用户界面、有良好的安全性设置等,可以使用户可以很快地掌握系统的操作方法,因此在操作上是可行的。
2.1.3技术可行性分析
从目前IT业使用比较广泛的数据库开发、管理软件来看,使用比较简单的中小型数据库,php5和Mysql,apache的结合无疑是在实际应用中较为成功的一种解决方案。
为用户提供了业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口。
所以技术实行起来相对会容易。
2.1.4可行性综合分析
开发本系统就是为了解决图书馆管理中的一些不规,使图书馆的管理向着规化、简单化、有效化的方向发展。
通过以上的分析,认为开发本系统是可行的。
2.2需求分析
需求分析包括系统目标、系统特点、系统要求。
2.2.1系统目标
本系统需实现
(1)前台主要完成广大读者进行普通的图书查询功能,和读者留言功能;
(2)登录页主要完成用户登录,用户注册,找回密码等功能;
(3)用户界面要完成图书查询功能,预定图书功能,欠费记录查询,已借图书查询,个人设置等功能;
(4)管理员界面需完成用户、图书、借阅、预定图书管理,延期、丢失处理,读者留言管理,回收站等功能。
并且界面友好,用户体验要好。
要适合最普通用户使用。
2.2.2系统特点
本系统有以下特点:
(1)确保系统性能良好界面友好
(2)处理效率高易维护易使用
(3)采用成熟的php5开发,使用的smarty模板引擎也相当成熟。
(4)系统尽可能简化重复操作提高效率
(5)简化统计难度,智能处理数据。
(6)使用MySQL数据,并且数据表尽量减小冗余字段。
2.2.3系统要求
本系统需实现功能:
(1)前台主要完成广大读者进行普通的图书查询功能,和读者留言功能;
2.3系统开发工具与运行平台
编辑器
NetBeansIDE7.0.1
数据库
Mysql
浏览器
category_id
服务器
Apache
开发语言
Php5
数据库图形化工具
SQLyog企业版
3概要设计
3.1系统模块功能划分
(1)游客访问模块(前台),实现图书查询和读者留言等功能。
(2)登录模块,主要实现注册用户、用户登录和找回密码等功能。
(3)用户管理模块(注册用户后台):
a、个人设置(个人基本信息设置,密码设置),
b、图书查询,
c、预定图书,
d、欠费记录查询,
e、已借图书查询,
f、安全退出[注销]
(4)管理员管理模块(管理员后台):
a、用户管理(用户的增、删、改、查、导入,批量删除),
b、院系管理(院系的增、删、改、查),
c、图书管理(图书的增、删、改、查、批量删除),
d、图书类别管理(图书类别的增、删、改、查),
e、借阅管理(借阅信息查询,借书,还书),
f、预定图书管理,
g、延期、丢失处理(延期、丢失图书显示,延期图书处理,丢失图书处理),
h、回收站,
i、读者留言管理(查看、删除、批量删除)
j、安全退出[注销]
系统模块功能图
图3-1系统模块功能图
3.2整体E-R图与局部E-R图
整体E-R图
图3-2整体E-R图
局部E-R图
图3-3图书类别E-R图图3-4预订图书信息E-R图
图3-5图书图书信息E-R图
图3-6管理员信息E-R图
图3-7读者信息E-R图
图3-8借阅信息E-R图图3-9院系信息E-R图
图3-10读者留言E-R图
4数据库设计
4.1数据库关系模型描述
图书类别表:
(类别编号,类别名称,更新日期,类别状态)标有下划线的为主
键;
图书信息表:
(图书编号,图书ISBN,图书名称,图书作者,,出版日期,类别编号,图书价格,更新日期,图书状态,借阅次数)标有下划线的为主键;
用户信息表(管理员信息表和读者信息表):
(用户编号,用户名,真实,性别,生日,密码,处理后的用户名,用户类型,院系编号,用户email,,更新日期,用户状态,提示信息)标有下划线的为主键;
院系信息表:
(院系编号,院系名称,学院领导,学院,学院状态,更新日期)标有下划线的为主键;
借阅信息表:
(编号,图书ISBN,用户名,借阅日期,应还日期,实还日期,罚金)标有下划线的为主键;
预定图书表:
(预定编号,图书ISBN,用户名,预定状态,预定时间)标有下划线的为主键;
读者留言信息表:
(信息编号,读者学号,留言容,联系方式,留言时间)标有下划线的为主键;
SESSION表:
(SESSION编号,用户编号,最后访问时间,SESSION起始时间,SESSION保留时间);
标有下划线的为主键;
4.2数据库物理实现
4.2.1图书类别表
表4-1图书类别表
列名
数据类型
长度
允许空
PK
mediumint
8
category_name
varchar
100
update_date
datetime
category_state
tinyint
4
4.2.2图书信息表
表4-2图书信息表
book_id
ISBN
50
book_name
book_author
book_publish
publish_date
2
book_price
float
book_state
times
允许
4.2.3用户信息表
表4-3用户信息表
user_id
username
realname
sex
char
birthday
user_password
40
username_clean
55
user_type
department_id
user_email
user_phone
user_state
tip_message
255
4.2.4院系信息表
表4-4院系信息表
4.2.5借阅信息表
表4-5借阅信息表
borrow_id
borrow_date
ruturn_date
returned_date
fine
double
4.2.6SESSION表
表4-6借阅信息表
session_id
session_last_visit
int
30
Session_start
Session_time
4.2.7预定图书信息表
表4-7借阅信息表
id
vachar
state
tidyint
insert_time
datetime
4.2.8留言信息表
表4-8留言信息表
message_id
contact
msg_content
text
update_time
4.3转换方法
(1)将概念结构转换为一般的关系模型;
(2)将转换来的关系模型向特定DBMS支持下的数据模型转换;
(3)对数据模型进行优化。
4.4数据库评价
本数据库为3NF式,尽量减少数据冗余,将读者信息表,管理员信息合并成一个用户表,用户表添加了username_clean字段,主要是为了防止sql注入,每个表都设有主键,提高查询速率,并且本数据库使用了外键能
更好的进行多表查询。
5系统详细设计
5.1各界面的程序流程图
(1)登录系统流程图如下:
图5-1登录系统流程图
(2)管理员后台流程图如下:
图5-2管理员后台流程图
(3)用户控制面板流程图
图5-3用户控制面板流程图
5.2界面设计与特色代码
5.2.1游客访问模块
提供游客查询图书信息,发表个人意见,查看相关图书馆信息,是进入登录界面的入口。
类为(index.php),模板为(index.html),部分特色代码:
界面为:
图5-4图书馆管理系统初始页
5.2.2用户管理后台模块
提供注册用户查询图书,预定图书,查询借阅信息,修改个人信息等
其主类为(ucp.php),模板为(ucp_main.html),部分特色代码:
界面:
图5-5用户控制面板
(1)图书查询
提供用户查询自己想要的图书信息,以书名,,作者作为关键字进行模糊查询,其界面为:
图5-6馆藏图书查询
(2)预订图书
对自己想借阅的图书进行预订,其类为(ucp_booking.php),模板为(ucp_booking_info.html,ucp_booking.html),部分特色代码:
a:
已预定图书预览(可以查看用户已预订的图书,同时也可以取消已经预订的图书)。
图5-7已预订图书预览
b:
预订图书(实现图书查看,图书预订功能)。
图5-8预订图书界面
(3)借阅信息查询
提供用户查看自己的借阅情况,欠费记录,和借阅的日期等。
图5-9借阅信息查询界面
(4)个人信息设置
a:
个人基本信息设置(提供修改个人一些需重新修改的用户信息)。
图5-10个人信息设置界面
b:
个人密码设置(提供修改个人密码)。
图5-11个人密码设置界面
5.2.3登录模块
登录界面可以实现普通用户登录和管理员登录,经过严格的验证,用户名和密码都正确方能进入系统。
登录界面同时也是注册用户的入口和找回密码功能的口,其主要类为(acp_login.php),模板为(login_body.html),部分特色代码:
图5-12用户登录界面
5.2.4用户注册模块
提供注册普通用户,其类为(register.php),模版为(register.html),部分特色代码:
界面为:
图5-13用户注册界面
5.2.5管理员后台模块
提供管理员对用户,图书,借阅信息等进行管理,还有对图书进行借阅和归还,回延期、丢失的图书进行相应的处理。
其主类为(acp.php),模板为(acp_main.html),部分特色代码:
图5-14管理员控制面板
(1)用户管理
主要类为(acp_user.php),其构造方法为:
用户列表
其方法为(method:
user_list),模板为(acp_user_list.html),主要功能为列出user表中的用户数据。
图5-15用户列表页
添加用户
add_user),模板为(acp_user_edit.html),主要功能为添加用户(编辑用户,提交,数据验证,保存)。
图5-16添加用户界面
c:
修改用户
edit_user)模板为(acp_user_edit.html),主要功能为修改用户(编辑用户,提交,数据验证,保存)。
图5-17用户编辑界面
d:
删除用户
del_user,batch_del_user),主要功能为删除用户(分为删除单个用户,和批量删除用户)。
部分特色代码代码(删除单个用户):
部分特色代码代码(批量删除用户):
e:
用户导入
其方法为(method:
import_user),主要功能为实现excel表的用户批量导入数据库。
部分特色代码:
(2)图书管理
主要类为(acp_book.php),其构造方法为:
图书列表
book_list),模板为(acp_book_list.html),主要功能为列出图书信息。
图5-18图书列表页
添加图书
add_book),模板为(acp_book_edit.html),主要功能为添加图书(编辑图书、提交、验证数据、保存)。
图5-19图书入库页
c:
修改图书信息
edit_book),模板为(acp_book_edit.html),主要功能为修改图书(编辑图书、提交、验证数据、保存).
界面为:
图5-20编辑图书界面
删除图书
del_book,batch_del_book),主要功能为删除图书(分为删除一本图书和批量删除图书).
特色代码(单个删除):
特色代码(批量删除):
(3)借阅管理
主要类为(acp_borrow.php)类,构造方法为:
借阅信息列表
borrow_list),模板为(acp_borrow_list.html),主要功能为显示出借阅信息。
图5-21借阅信息列表页
借书
borrow_book),模板为(acp_borrow_book.html),主要功能为借书(输入图书ISBN,用户名,借出,借书成功)。
图5-22借阅管理界面
还书
return_book),模板为(acp_borrow_book.html),主要功能为还书(输入图书ISBN,还回,还书成功)。
部分特色代码:
图5-23还书界面
(4)预定图书管理
主要实现预定图书的借阅,查询,和删除功能。
其主要类为(acp_booking.php),构造方法为(acp_booking),模版为(acp_booking.html)。
部分特色代码:
图5-24预订图书列表页
(5)院系管理
主要实现院系列表查看,添加院系,编辑院系,删除院系等功能。
其主要类为(acp_department.php),构造方法为:
列表也模板为(acp_department_list.html)。
图5-25院系列表页
添加、编辑院系信息模板为(acp_department_edit.html)。
图5-26添加学院界面
(6)图书类别管理
主实现对图书类别的查看,添加,删除功能。
其主要类为(acp_category.php)模板为(acp_category_list.html),构造方法为:
图5-27图书种类列表页
(7)丢失延期处理
主要实现图书的丢失处理,图示的延期处理。
其类为(acp_latelost.php)模板为(acp_late_lost.html),构造方法为:
初始界面为:
图5-28延期、丢失处理初始页
延期处理:
对读者图书延期还回的情况进行罚金上的处理。
丢失处理:
对读者丢失图书进行相应的罚金上的处理。
延期、丢失处理界面为:
图5-29延期、丢失处理页
(8)留言管理
主要对读者留言进行查看,删除。
其主要类为(acp_levmsg.php),模版为(acp_levmsg_list.html)。
部分色代码:
(9)回收站
主要实现删除数据的回收,有恢复,彻底销毁,清空回收站功能。
其类为(acp_recycle.php),模板为(acp_recycle_list.html