基于PHP和MYSQL数据库实现的网上图书管理系统

Smilelove

发布日期: 2018-12-05 09:24:24 浏览量: 883
评分:
star star star star star star star star star_border star_border
*转载请注明来自write-bug.com

一、系统需求分析

1.1 系统功能结构模块

  • 系统设置:图书馆信息,用户设置,参数设置,书架设置
  • 图书借还:图书借阅,图书续借,图书归还
  • 系统查询:图书档案查询,图书借阅查询,节约到期查询

1.2 功能需求

  • 系统管理:定义读者类别并设置参数,添加、修改和删除读者信息
  • 图书续借和预约:实现图书的续借、预约等功能
  • 图书检索:按书名或作者等信息进行检索
  • 借阅查询:查询个人借阅情况、未付罚款情况
  • 其他要求:读者未登录时,只能检索图书,登录后才能使用预约、续借和取消预约图书,查询个人借阅史以及修改密码功能

二、概念结构设计

2.1 bookcase

Name Code Data Type Length Precision Primary Foreign Key Mandatory
id 书号 char(10) 10 TRUE FALSE TRUE
name 书名 char(10) 10 FALSE FALSE TRUE

2.2 bookinfo

Name Code Data Type Length Precision Primary Foreign Key Mandatory
Barcode 条形码 char(10) 10 TRUE FALSE TRUE
bookname 书名 char(10) 10 FALSE FALSE TRUE
typeid 图书类型 char(20) 20 FALSE FALSE FALSE
author 作者 FLOAT FALSE FALSE TRUE
Page 页数 FLOAT FALSE FALSE TRUE
bookcase 书架 char(Max) Max FALSE FALSE FALSE
press 出版社 char(20) 20 FALSE FALSE FALSE

2.3 borrow

Name Code Data Type Length Precision Primary Foreign Key Mandatory
id 登陆账号 char(10) 10 TRUE FALSE TRUE
readerid 读者证 char(10) 10 TRUE FALSE TRUE
bookid 条形码 char(20) 20 TRUE FALSE FALSE
borrowtime 借书时间 char(10) 10 FALSE FALSE FALSE
backtime 还书时间 char(10) 10 FALSE FALSE FALSE
ifback 是否归还 char(5) 5 FALSE FALSE FALSE

2.4 manager

Name Code Data Type Length Precision Primary Foreign Key Mandatory
id 登陆账号 char(10) 10 TRUE FALSE TRUE
name 登录名 char(10) 10 FALSE FALSE TRUE
pwd 密码 char(10) 10 FALSE FALSE FALSE

2.5 reader

Name Code Data Type Length Precision Primary Foreign Key Mandatory
id 登陆账号 char(10) 10 TRUE FALSE TRUE
name 登录名 char(10) 10 FALSE FALSE TRUE
sex 性别 char(10) 10 FALSE FALSE FALSE
tel 电话号 char(11) 11 FALSE FALSE FALSE
E-mail 邮箱 char(20) 20 FALSE FALSE FALSE

2.6 ER图

三、逻辑结构设计

3.1 登录页面展示

3.2 登录后首页面

3.3 图书查询页面

3.4 借阅历史页面

3.5 用户管理页面

3.6 图书借阅页面

3.7 图书续借页面

3.8 图书归还页面

四、物理结构设计

Sql脚本文件

  1. /*==============================================================*/
  2. /* DBMS name: MySQL 5.0 */
  3. /*==============================================================*/
  4. drop table if exists book_type;
  5. drop table if exists tb_bookcase;
  6. drop table if exists tb_bookinfo;
  7. drop table if exists tb_borrow;
  8. drop table if exists tb_library;
  9. drop table if exists tb_manager;
  10. drop table if exists tb_publishing;
  11. drop table if exists tb_reder;
  12. drop table if exists tb——readertype;
  13. /*==============================================================*/
  14. /* Table: book_type */
  15. /*==============================================================*/
  16. create table book_type
  17. (
  18. id int not null,
  19. typename varchar(30),
  20. primary key (id)
  21. );
  22. /*==============================================================*/
  23. /* Table: tb_bookcase */
  24. /*==============================================================*/
  25. create table tb_bookcase
  26. (
  27. id int not null,
  28. name varchar(30),
  29. primary key (id)
  30. );
  31. /*==============================================================*/
  32. /* Table: tb_bookinfo */
  33. /*==============================================================*/
  34. create table tb_bookinfo
  35. (
  36. bookname varchar(70),
  37. id int not null,
  38. price float(8),
  39. inTime date,
  40. author varchar(30),
  41. primary key (id)
  42. );
  43. /*==============================================================*/
  44. /* Table: tb_borrow */
  45. /*==============================================================*/
  46. create table tb_borrow
  47. (
  48. id int not null,
  49. readerid int,
  50. bookid int,
  51. borrowTime date,
  52. backTime date,
  53. ifback smallint,
  54. operator varchar(30),
  55. primary key (id)
  56. );
  57. /*==============================================================*/
  58. /* Table: tb_library */
  59. /*==============================================================*/
  60. create table tb_library
  61. (
  62. id int not null,
  63. libraryname varchar(50),
  64. tel varchar(20),
  65. adress varchar(100),
  66. email varchar(100),
  67. createData date,
  68. introduce text,
  69. primary key (id)
  70. );
  71. /*==============================================================*/
  72. /* Table: tb_manager */
  73. /*==============================================================*/
  74. create table tb_manager
  75. (
  76. id int not null,
  77. name varchar(30),
  78. pwd varchar(30),
  79. primary key (id)
  80. );
  81. /*==============================================================*/
  82. /* Table: tb_publishing */
  83. /*==============================================================*/
  84. create table tb_publishing
  85. (
  86. ISBN varchar(20),
  87. pubname varchar(30)
  88. );
  89. /*==============================================================*/
  90. /* Table: tb_reder */
  91. /*==============================================================*/
  92. create table tb_reder
  93. (
  94. rid int not null,
  95. name varchar(20),
  96. sex varchar(4),
  97. birthday date,
  98. tel varchar(20),
  99. email varchar(100),
  100. createData date,
  101. operator varchar(30),
  102. remark text,
  103. vocation varchar(50),
  104. primary key (rid)
  105. );
  106. /*==============================================================*/
  107. /* Table: tb——readertype */
  108. /*==============================================================*/
  109. create table tb——readertype
  110. (
  111. id int not null,
  112. name varchar(50),
  113. number int,
  114. primary key (id)
  115. );

五、总结

在这个过程中,我们可以获得了解数据库,创建数据库,构建数据库的过程,整个过程中,获得的不仅是代码的实现,以及界面的构造和创建。在数据库和php的连接过程上才是整个设计的关键所在,数据库作为一个基础知识为系统的创建以及数据的收集整理提供了很大的作用。在今后的学习上更应该注意各个软件的结合才行。

上传的附件 cloud_download 基于PHP和MYSQL数据库实现的网上图书管理系统.7z ( 1.83mb, 44次下载 )
error_outline 下载需要8点积分

发送私信

即使是不成熟的尝试,也胜于胎死腹中的策略

7
文章数
9
评论数
最近文章
eject