项目介绍

项目名称:图书管理系统

项目实现的内容:

1.用户登录、用户注册、登录界面验证码功能。

2.退出登录功能、内容查看、内容添加、内容修改。

前端页面设计得有点可能不太专业,将就着用。主要专注在功能的实现。

 内容页

添加内容

删除内容

 修改内容

 具体实现步骤

根目录布置: 

 1.登录界面实现

具体步骤参照文章:

PHP+MySQL制作简单的用户注册登录界面(注释超详细~附源代码)_Tsing X的博客-CSDN博客

2.内容页实现

*注意,请完成登录界面后再进行后续操作

 1.1创建index.html

用于显示内容页

图书管理系统

图书管理系统

书名作者国家图书编号入库时间操作

编辑

删除

1.2创建index.php关联index.html

实现对内容数据的获取,执行数据的查询操作

//主页

require './init_login.php';//验证是否有登录

require 'info_db_connect.php';//连接数据库

$sql='select id,title,author,country,addtime from info order by id asc';

//执行查询语句,查询结果集存储在对象$stmt中

$stmt = $pdo->query($sql);

//从stmt中取出查询结果,并保存在$data中

$data=$stmt->fetchAll(PDO::FETCH_ASSOC);

require './view/index.html';

?>

2.1创建info_db_connect.php

用于连接数据库

//用于管理界面的数据库的连接

//设置DSN数据源

$dsn = 'mysql:host=localhost;dbname=LMS;charset=utf8';//注意,此处的LMS为自定义的数据库名,你创建什么数据库名就将LMS改成它就行了

//连接数据库

try {

$pdo = new PDO($dsn,'root','Huawei@123');//通过pdo连接数据源,此处root为MySQl的登录用户名,其后是登录密码

}catch (PDOException $e){

echo 'error--'.$e->getMessage();

}

3.1创建add.html

添加内容的界面实现过程

图书管理系统

图书管理系统

图书名称:
作者姓名:
作者国籍:
图书简介:

3.2创建add.php关联add.html

在验证用户为登录状态后,执行数据的插入工作

require './init_login.php';//验证是否有登录

if (!empty($_POST)){//用户提交了表单

//获取表单中输入的数据

$data = array();//用于存储表单中输入的数据的数组

$data['title']=trim(htmlspecialchars($_POST['title']));//存储书名

$data['author']=trim(htmlspecialchars($_POST['author']));//存储作者名

$data['country']=trim(htmlspecialchars($_POST['country']));//存储国籍

$data['content']=trim(htmlspecialchars($_POST['content']));//存储简介

//连接数据库

require 'info_db_connect.php';

$sql='insert into info(title,author,country,content) values(:title,:author,:country,:content)';

$stmt=$pdo->prepare($sql);//预编译sql语句

$stmt->execute($data);//执行插入数据的sql语句

header('Location:./index.php');//重定向到主页面

}

require './view/add.html';

4.1创建edit.html

编辑界面实现过程

图书管理系统

图书管理系统

图书名称:
作者姓名:
作者国籍:
图书简介:

4.2创建edit.php,关联edit.html

在验证完用户为登录状态后,执行修改数据库的相关操作

//用于编辑内容

require './init_login.php';//验证是否有登录

require 'info_db_connect.php';//连接数据库

$id=isset($_GET['id'])?(int)$_GET['id']:0;//获取get传参id值

$data=array('id'=>$id);//将id值放到data数组中

$sql='select title,author,country,content,addtime from info where id=:id';//:id占位符

$stmt=$pdo->prepare($sql);//对于查询语句进行编译PDOStatement对象

if (!$stmt->execute($data)){//执行查询语句

exit('查询失败'.implode(' ', $stmt->errorInfo()));//输出查询失败原因

}

$data = $stmt->fetch(PDO::FETCH_ASSOC);//将查询结果存储在数组data中

if(empty($data)){

echo ('新闻id不存在');

}

//数据修改

if (!empty($_POST)){

// var_dump($data);

$id=isset($_GET['id'])?(int)$_GET['id']:0;//获取get传参id值

$data=array('id'=>$id);//将id值放到data数组中

$data = array();//用于存储表单中输入的数据的数组

$data=array('id'=>$id);//将id值放到data数组中

$data['title']=trim(htmlspecialchars($_POST['title']));//存储图书名称

$data['author']=trim(htmlspecialchars($_POST['author']));//存储作者名

$data['country']=trim(htmlspecialchars($_POST['country']));//存储国家名称

$data['content']=trim(htmlspecialchars($_POST['content']));//存储图书简介

// print_r($data);

//将数据写入到数据库中(update)

$sql='update `info` set title=:title,author=:author,country=:country,content=:content where id=:id';

$stmt=$pdo->prepare($sql);//预编译sql语句

$stmt->execute($data);//执行插入数据的sql语句

}

require './view/edit.html';

5.创建del.php

用于实现删除内容的操作,通过get值准确定位到要执行操作的数据

//用于删除内容

require './init_login.php';//验证是否有登录

require 'info_db_connect.php';//连接数据库

$id=isset($_GET['id'])?(int)$_GET['id']:0;//获取get传参id值

$data=array('id'=>$id);//将id值放到data数组中

//删除数据的sql语句

$sql='delete from info where id=:id';

//预处理

$stmt=$pdo->prepare($sql);

//执行sql语句

if (!$stmt->execute($data)){

exit('删除失败'.implode('-', $stmt->errorInfo()));

}

//重定向到主页面

header('Location:index.php');

6.1创建show.html

用于实现展示详细内容的功能

图书管理系统

图书管理系统

入库时间: 编号:

6.2创建show.php关联show.html

执行的操作有连接数据库,查询数据,对传参进行判断。

//内容详情页

require './init_login.php';//判断是否登录

require 'info_db_connect.php';//连接数据库

$id=isset($_GET['id'])?(int)$_GET['id']:0;//获取get传参id值

$data=array('id'=>$id);//将id值放到data数组中

$sql='select id,title,content,author,country,addtime from info where id=:id';//:id占位符

$stmt=$pdo->prepare($sql);//对于查询语句进行编译PDOStatement对象

if (!$stmt->execute($data)){//执行查询语句

exit('查询失败'.implode(' ', $stmt->errorInfo()));//输出查询失败原因

}

$data = $stmt->fetch(PDO::FETCH_ASSOC);//将查询结果存储在数组data中

if(empty($data)){

echo ('编号不存在');

}

require './view/show.html';

7.创建init_login.php

用于判断用户是否登录,若未登录则跳转登录界面,提升网站安全性

//验证是否有登录,无登录则跳转登录界面

//启动session

session_start();

if (!isset($_SESSION['username'])){

header('Location:login.php');

exit;

}

8.创建logout.php

依靠关闭session来实现退出登录的功能。

//用于退出登录

session_start();

//删除session

unset($_SESSION['username']);

//跳转登录界面

header('location:login.php');

*注意:篇幅有限,具体详见源代码,仅供学习参考,转载请注明出处。感谢支持。

源代码下载:

https://pan.quark.cn/s/7223b1e8b27a提取码:SVw5  

文章链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: