数据库系统实验报告图书管理系统php实现.docx

上传人:b****6 文档编号:16592718 上传时间:2023-07-15 格式:DOCX 页数:32 大小:611.31KB
下载 相关 举报
数据库系统实验报告图书管理系统php实现.docx_第1页
第1页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第2页
第2页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第3页
第3页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第4页
第4页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第5页
第5页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第6页
第6页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第7页
第7页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第8页
第8页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第9页
第9页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第10页
第10页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第11页
第11页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第12页
第12页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第13页
第13页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第14页
第14页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第15页
第15页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第16页
第16页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第17页
第17页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第18页
第18页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第19页
第19页 / 共32页
数据库系统实验报告图书管理系统php实现.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库系统实验报告图书管理系统php实现.docx

《数据库系统实验报告图书管理系统php实现.docx》由会员分享,可在线阅读,更多相关《数据库系统实验报告图书管理系统php实现.docx(32页珍藏版)》请在冰点文库上搜索。

数据库系统实验报告图书管理系统php实现.docx

数据库系统实验报告图书管理系统php实现

第一章需求分析

1.1系统需求分析

通过计算机对图书进行管理,不仅为图书馆的管理注入了新的生机,而且在运行过程中节省了大量的人力、物力、财力和时间,可以提高图书馆的效率,还为图书馆在读者群中树立了一个全新的形象,并为图书馆日后发展奠定一个良好的基础。

1.1信息要求:

管理员先在图书馆管理系统中建立管理员的账号、密码和权限;管理员添加和修改新书信息,包括图书编号、书名、作者、出版社、出版日期、价格、备注、索书号;当用户借书和还书的时候,可在数据库中获得用户名、图书编号和借书(还书)日期等;

1.2处理要求:

管理员才可以在图书馆管理系统中添加、修改和删除新书的信息、新用户、借书和还书的用户信息。

1.3安全性和完整性要求:

新建管理员主要主管理员添加,需要密码,有助于增强系统的安全性。

对所有可能出现的输入数据的响应予以定义,对合法和非合法的输入值的响应做出错误的提示。

第二章系统设计

系统概要设计是系统实现一个重要的前期工作。

本章节将结合功能设计、模块划分和子模块功能设计及流程三个方面对该系统的概要设计做详细的说明。

2.1功能设计

本系统功能主要包括登录,系统设置,读者管理,图书管理,图书借还,系统查询等。

本系统设计实现了用户登录、系统设置、读者管理、图书管理、图书借还、系统查询等模块。

系统模块结构参考图2-1。

图2-1图书管理系统模块

 

 

2.2模块具体划分

系统主要划分为四大模块,分别是用户登录模块、系统设置模块、读者管理模块、图书管理模块和图书借还等模块。

其模块具体划分参考图2-2。

图2-2

2.3子模块功能设计及流程

为了能更好地完成系统实现,本文对系统各子模块功能设计以及流程做了详细的说明。

2.3.1登录模块

用户输入用户密码,系统验证,失败时返回登录页面,成功时进入主界面。

登陆成功,将用户信息保存Session里,便于用户信息提取。

设计流程图参考图2-4-1。

 

图2-4-1登录模块程序流程

error

success

 

2.3.2系统设置模块

主要操作:

对管理员、书架等的增加、修改、删除、查询。

基本操作流程参考图2-4-2-a。

操作说明:

增加——验证录入信息是否正确,确认正确,成功后显示信息列表。

修改——验证修改信息是否正确,确认修改,成功后显示信息列表。

删除——选择删除项,确认删除后,删除选择数据,成功后显示回信息列表。

查询——查询所有的管理员、书架等信息。

查询流程参考图2-4-2-b。

图2-4-2-a系统设置基本操作

 

图2-4-2-b基本操作的程序流程

 

 

 

NN

YY

 

2.3.3读者管理模块

主要操作:

对读者信息的维护,包括增、删、查、改等。

程序流程参考图2-4-2-a和图2-4-2-b。

2.3.4图书管理模块

主要操作:

对图书信息的维护,包括增、删、查、改等。

程序流程参考图2-4-2-a和图2-4-2-b。

2.3.5图书借还模块

主要操作:

对图书的管理,包括图书借阅、图书续借、图书归还等。

程序流程参考图2-4-5-a、图2-4-5-b和图2-4-5-c。

图2-4-5-a图书借阅的程序流程

确认确认

 

图2-4-5-b图书续借的程序流程

 

 

 

图2-4-5-c图书续借的程序流程

 

 

2.3.6系统查询模块

主要操作:

对图书的相关查询,包括图书档案查询、图书借阅查询、借阅到期提醒等。

程序流程参考图2-4-6。

图2-4-6查询操作流程图

 

 

NN

YY

 

第三章数据库设计

3.1数据字典

有了系统的数据流图后,还有相当多的数据信息如图书、借阅、归还等信息需要进一步描述,这就是需要定义数据字典,才能把现有的系统描述清楚。

列出系统的主要数据字典。

名称:

管理员

描述:

记录管理员信息

定义:

管理员信息=管理员ID+管理员密码

输入数据:

管理员信息

输出数据:

管理员信息

名称:

图书信息表结构

描述:

记录所有图书的基本情况

定义:

图书信息=图书编号+ISBN号+索引号+图书类别+图书名称+语种+原名+页码+作者+价格+出版社+出版时间+登记日期+备注

输入数据:

图书信息

输出数据:

图书信息

名称:

读者信息表结构

描述:

记录所有读者的基本情况

定义:

读者信息=读者编号+性别+姓名+类别+身份证号+办证日期+证有效期+工作单位+E-mail+联系电话

输入数据:

读者信息

输出数据:

读者信息

名称:

借书登记表结构

描述:

记录所有图书的借阅情况

定义:

借书信息=读者编号+读者编号+读者类别+图书编号+图书类别+图书名称+原名+

作者+出版社+借出日期+应还日期

输入数据:

借书信息

输出数据:

借书信息

名称:

记录归还登记表结构

描述:

记录所有图书的归还情况

定义:

归还信息=读者编号+读者编号+读者类别+图书编号+图书类别+图书名称+原名+作者+出版社+借出日期+应还日期+实还日期+罚款

输入数据:

归还信息

输出数据:

归还信息

3.2数据库的逻辑设计

在需求分析阶段已完成该系统所有的数据分析。

根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。

下面给出概念结构设计得E-R图。

 

1:

管理员实体E-R图:

图3.1管理员实体E-R图

 

管理员

 

2:

会员信息实体E-R图:

图3.2读者实体E-R图

 

 

3:

图书信息实体E-R图:

 

图3.3图书实体E-R图

条形码图书

 

 

4:

借书信息实体E-R图:

图3.4借书实体E-R图

读者编号借书

 

 

6:

还书信息实体E-R图:

图3.5还书实体E-R图

读者编号还书

 

7:

表示系统E-R图(图4.6):

 

图4.6系统E-R图

11

 

NN

MM

 

NN

3.3数据库表

管理员信息表:

tb_manager

管理员信息表主要用来保存管理员信息。

表tb_manager的结构如表3-4-1所示。

表3-4-1

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

Int

NO

YES

ID自动编号

mname

Varchar(30)

YES

NULL

管理员名称

pwd

Varchar(30)

YES

NULL

密码

权限表:

tb_purview

权限表主要用来保存管理员的权限信息,该表中的id字段与管理员信息表(tb_purview)中的id字段关联。

表tb_purview的结构如表3-4-2所示。

表3-4-2

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

Int

NO

YES

0

管理员ID号

sysset

Tinyint

YES

0

系统设置

readerset

Tinyint

YES

0

读者管理

bookset

Tinyin

YES

0

图书管理

borrowback

Tinyint

YES

0

图书借还

sysquery

Tinyint

YES

0

系统查询

参数设置表:

tb_parameter

参数设置表主要用来保存办证费及书证的有效期限等信息。

表tb_parameter的结构如表3-4-3所示

表3-4-3

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

Int

NO

YES

ID(自动编号)

cost

Varchar(30)

YES

NULL

办证费

validity

Int

YES

NULL

有限期限

图书类型表:

tb_booktype

主要用来保存图书类型信息。

表tb_booktype的结构如表3-4-4所示。

表3-4-4

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

Int

NO

YES

ID(自动编号)

typename

Varchar(30)

YES

NULL

类型名称

days

Int

YES

NULL

可借天数

书架信息表:

tb_bookcase

书架信息表主要用来保存书架信息。

表tb_bookcase的结构如表3-4-5所示。

表3-4-5

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

Int

NO

YES

ID(自动编号)

name

Varchar(30)

YES

NULL

书架名称

图书信息表:

tb_bookinfo.

该表用于保存图书信息。

表tb_bookinfo的结构如表3-4-6所示。

表3-4-6

字段名称

数据类型

是否为空

是否主键

默认值

描述

barcode

varchar(30)

YES

NULL

条形码

bookname

varchar(70)

YES

NULL

书名

typeid

int

YES

NULL

类型

author

varchar(30)

YES

NULL

作者

translator

varchar(30)

YES

NULL

译者

ISBN

varchar(20)

YES

NULL

出版社

price

money

YES

NULL

价格

page

int

YES

NULL

页码

bookcase

int

YES

NULL

书架

intTime

datetime

YES

NULL

录入时间

operator

varchar(30)

YES

NULL

操作员

del

tinyint

YES

0

是否删除

id

int

NO

YES

ID(自动编号)

图书借阅信息表:

tb_borrow

用于保存图书信息。

表tb_borrow如表3-4-7所示。

表3-4-7

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

int

NO

YES

ID(自动编号)

readerid

int

YES

NULL

读者编号

bookid

int

YES

NULL

图书编号

borrowtime

datetime

YES

NULL

借书编号

backtime

datetime

YES

NULL

应还时间

operator

varchar(30)

YES

NULL

操作员

ifback

tinyint

YES

0

是否归还

图书归还信息表:

tb_giveback

图书归还信息表主要用来保存图书归还信息。

表tb_giveback的结构如表3-4-8所示。

表3-4-8

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

int

NO

YES

ID(自动编号)

readerid

int

YES

NULL

读者编号

bookid

int

YES

NULL

图书编号

backtime

datetime

YES

NULL

归还时间

operator

varchar(30)

YES

NULL

操作员

出版社信息表:

tb_publishing

出版社信息表主要用来保存出版社信息。

表tb_publishing的结构如表3-4-9所示。

表3-4-9

字段名称

数据类型

是否为空

是否主键

默认值

描述

ISBN

varchar(30)

YES

YES

NULL

ISBN号

pubname

varchar(30)

YES

NULL

出版社名称

读者类型信息表:

tb_readertype

读者类型信息表主要用来保存读者类型信息。

表tb_readertype的结构如表3-4-11所示。

表3-4-10

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

int

NO

YES

ID(自动编号)

rtname

varchar(50)

YES

NULL

名称

number

int

YES

NULL

可借数量

读者信息表:

tb_reader

读者信息表主要用来保存读者信息。

表tb_reader的结构如表3-4-10所示。

表3-4-11

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

int

NO

YES

ID(自动编号)

readername

varchar(20)

YES

NULL

姓名

sex

varchar(4)

YES

NULL

性别

barcode

varchar(30)

YES

NULL

条形码

vocation

varchar(50)

YES

NULL

职业

birthday

datetime

YES

NULL

出生日期

paperType

varchar(10)

YES

NULL

有效证件

paperNO

varchar(20)

YES

NULL

证件号码

tel

varchar(20)

YES

NULL

电话

email

varchar(100)

YES

NULL

电子邮件

createDate

datetime

YES

NULL

登记日期

operator

varchar(30)

YES

NULL

操作员

remark

text

YES

NULL

备注

typeid

int

YES

NULL

类型

图书馆信息表:

tb_library

图书馆信息表主要用来保存图书馆的基本信息。

表tb_library的结构如表3-4-12所示。

表3-4-12

字段名称

数据类型

是否为空

是否主键

默认值

描述

id

int

NO

YES

ID(自动编号)

libraryname

varchar(50)

YES

NULL

馆名

curator

varchar(10)

YES

NULL

馆长

tel

varchar(20)

YES

NULL

联系电话

address

varchar(100)

YES

NULL

联系地址

email

varchar(100)

YES

NULL

E—mail

url

varchar(100)

YES

NULL

网址

creatDate

datetime

YES

NULL

建馆日期

introduce

text

YES

NULL

简介

第四章实施与维护

系统给图书馆提供了系统设置、读者管理、图书管理、图书借还、系统查询等功能。

本章节详细地介绍了每个子模块实现的过程,同时也列出了部分主要的源代码以供参考。

4.1登录模块

实现过程:

登录界面(login.php文件),输入用户名和密码,通过调用(chklogin.php文件)的checkinput()方法进行验证用户登陆。

运行页面效果如下图4-1:

图4-1登录页面

4.2管理员设置

增加系统管理员,可以增加、修改、删除系统管理员用户。

如下图4-2所示

图4-2管理员设置页面

4.3添加图书信息

身份验证通过以后,点击可以使用系统的基本信息管理界面,这是管理员主要的输入信息部分,它即可以对数据进行输入。

填写好各项信息后,单击保存按钮,系统将对这些信息进行处理。

界面见下图4-3所示:

图4-3添加图书信息页面

 

4.4图书借阅管理

可以实时显示借阅状态,并可进行还书和修改操作,如下图4-4所示:

 

4.5读者信息管理

分为读者档案管理和读者类型管理,如下图4-5-1和4-5-2所示:

图4-5-1读者类型管理页面

图4-5-2读者档案管理页面

4.5系统查询

分为图书档案查询、图书借阅查询和图书借阅到期提醒,如下图4-5-1和4-5-2和4-5-3所示:

 

图4-5-1图书档案查询页面

图4-5-2图书借阅查询页面

图4-5-3图书借阅到期提醒页面

4.6更改口令

用于更改用户的密码信息,如下图4-6所示:

图4-6更改用户口令页面

4.7数据库连接

本系统数据库连接采用了MySQL数据库连接方式实现。

数据库的连接实现在conn包中的conn.php文件,其主要代码为:

php

$conn=mysql_connect("localhost","root","root")ordie("数据库服务器连接错误".mysql_error());

mysql_select_db("db_library",$conn)ordie("数据库访问错误".mysql_error());

mysql_query("setnamesgb2312");

>

 

第五章结束语

本系统的设计与实现,是根据图书馆现状分析下完成的。

本系统相比其他类似系统有着如下优点:

1、功能齐全,有用户权限设置、图书借阅、图书续借等功能模块信息管理;2、界面友好,操作简捷;3、系统使用MySQL数据库,响应时间短、经济实惠;4、使用范围广,适合各种规模图书馆运营使用。

由于能力有限,加上时间仓促,本系统仍然存在一些不足之处,如:

系统代码较为冗余、出版社管理功能未实现、系统业务逻辑不清晰等,这些将会在后期逐步改进完善。

数据库代码

USEmaster

IFEXISTS(SELECT*

FROMsysdatabases

WHEREname='library')

DROPDATABASElibrary;

CREATEDATABASElibrary

ON(

NAME=library数据,

FILENAME='G:

\SQLData\library.MDF',--特别说明,调试的时候要现在G盘创建一个“SQLData”文件夹

SIZE=10MB,

MAXSIZE=50MB,

FILEGROWTH=5MB

LOGON(

NAME=library日志,

FILENAME='G:

\SQLData\library.LDF',

SIZE=10MB,

MAXSIZE=20MB,

FILEGROWTH=5MB

USElibrary

--建表的SQL代码:

--管理员信息表

createtabletb_manager(

idintprimarykey,--ID自动编号

mnamevarchar(30),--管理员名称

pwdvarchar(30),--密码

);

--权限表

createtabletb_purview(

idintdefault'0'primarykey,

syssettinyintdefault'0',

readersettinyintdefault'0',

booksettinyintdefault'0',

borrowbacktinyintdefault'0',

sysquerytinyintdefault'0',

foreignkey(id)referencestb_manager(id)

);

--参数设置表

createtabletb_parameter(

idintprimarykey,

costvarchar(30),

validityint,

);

--图书类型表

createtabletb_booktype(

idintprimarykey,

typenamevarchar(30),

daysint,

);

--书架信息表

createtabletb_bookcase(

idintprimarykey,

namevarchar(30),

);

--图书信息表

createtabletb_bookinfo(

barcodevarchar(30),

booknamevarchar(70),

typeidint,

authorvarchar(30),

translatorvarchar(30),

ISBNvarchar(20),

pricemoney,

pageint,

bookcaseint,

intTimedatetime,

operatorvarchar(30),

deltinyintdefault'0',

idintprimarykey,

);

--图书借阅信息表

createtabletb_borrow(

idintprimarykey,

readeridint,

bookidint,

borrowtimedatetime,

backtimedatetime,

operatorvarchar(30),

ifbacktinyintdefault'0',

);

--图书归还信息表

createtabletb_giveback(

idintprimarykey,

readeridint,

bookidint,

backtimedatetime,

operatorvarchar(30),

);

--出版社信息表

createtabletb_publishing(

ISBNvarchar(30)primarykey,

pubnamevarchar(30),

);

--读者类型信息表

createtabletb_readertype(

idintprimarykey,

rtnamevarchar(50),

numberint,

);

--读者信息表

createtabletb_reader(

idintprimarykey,

readernamevarchar(20),

sexvarchar(4),

barcodevar

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2