PHP+MySQL图书管理系统(附源码+演示视频)

环境配置

本系统采用phpstudy开发平台,采用PHP和MySQL数据库进行开发,开发工具为HBuilder。phpStudy是一个PHP调试环境的程序集成最新的

Apache+PHP+MySQL+phpMyAdmin,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。(其他平台均可)@@@文末有获取方式
————————————————

含sql文件

主要功能

用户:
登录、
注册、
查看搜索图书信息、
借阅图书、
归还图书
管理员
图书增删改查管理、
图书类别增删改管理、
用户增删改管理、
用户借阅查询、
用户借阅详情、
管理员登录

主要语言

PHP MySQL JavaScript CSS

运行截图

用户登录
在这里插入图片描述

// 处理登录
if (isset($_POST['login'])) {
    $username = $_POST['username'];
    $password = $_POST['password'];

    // 查询数据库验证用户
    $sql = "SELECT * FROM user WHERE username = '$username' AND password = '$password'";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
        // 登录成功,保存用户信息到 session
        $user = $result->fetch_assoc();
        $_SESSION['user'] = $user;

        // 设置 cookie 保存登录状态,过期时间为 7 天
        setcookie('username', $username, time() + (7 * 24 * 60 * 60), "/");  // 保存用户名
        setcookie('user_id', $user['user_id'], time() + (7 * 24 * 60 * 60), "/");  // 保存用户ID

        header('Location: index.php');  // 登录成功后跳转到首页
        exit();
    } else {
        $error = "用户名或密码错误!";
    }
}

管理员登录在这里插入图片描述

// 处理登录表单提交
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $username = $_POST['username'];
    $password = $_POST['password'];

    // 直接执行查询语句,不使用预处理
    $sql = "SELECT * FROM admin WHERE username = '$username' LIMIT 1";
    $result = mysqli_query($conn, $sql);

    if (mysqli_num_rows($result) > 0) {
        $admin = mysqli_fetch_assoc($result);

        // 检查密码是否匹配
        if ($admin['password'] === $password) {
            // 登录成功,存储 session 信息
            $_SESSION['admin_id'] = $admin['admin_id'];
            $_SESSION['username'] = $admin['username'];
            header('Location: index.php');  // 登录成功后跳转到主页
            exit();
        } else {
            $error = "用户名或密码错误";
        }
    } else {
        $error = "用户名或密码错误";
    }
}

用户注册
在这里插入图片描述

 // 验证密码是否一致
    if ($password !== $confirm_password) {
        $error = "两次输入的密码不一致!";
    } else {
        // 检查用户名是否已存在
        $sql_check = "SELECT * FROM user WHERE username = '$username'";
        $result_check = $conn->query($sql_check);

        if ($result_check->num_rows > 0) {
            $error = "用户名已存在!";
        } else {
            // 检查邮箱是否已存在
            $sql_email_check = "SELECT * FROM user WHERE email = '$email'";
            $result_email_check = $conn->query($sql_email_check);

            if ($result_email_check->num_rows > 0) {
                $error = "邮箱已注册!";
            } else {
                // 检查手机号是否已存在
                $sql_phone_check = "SELECT * FROM user WHERE phone = '$phone'";
                $result_phone_check = $conn->query($sql_phone_check);

                if ($result_phone_check->num_rows > 0) {
                    $error = "手机号已注册!";
                } else {
                    // 插入新用户
                    $sql = "INSERT INTO user (username, password, email, phone) 
                            VALUES ('$username', '$password', '$email', '$phone')";
                    if ($conn->query($sql) === TRUE) {
                        // 注册成功后提示,并跳转
                        echo "<script>alert('注册成功!');window.location.href='login.php';</script>";
                        exit();
                    } else {
                        $error = "注册失败,请稍后重试!";
                    }

用户界面
在这里插入图片描述

// 检查用户是否登录
if (!isset($_SESSION['user'])) {
    header('Location: login.php');  // 如果未登录,则重定向到登录页面
    exit();
}

// 获取当前登录用户的用户名
$username = $_SESSION['user']['username'];

// 获取搜索关键词(如果有)
$search = isset($_GET['search']) ? $_GET['search'] : '';

// 处理分页
$per_page = 5;  // 每页显示的图书数量
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$start = ($page - 1) * $per_page;

// 根据搜索条件构造SQL查询
if ($search) {

图书管理
在这里插入图片描述
图书类别管理
在这里插入图片描述
用户管理
在这里插入图片描述
借阅管理
在这里插入图片描述

演示视频

PHP+MySQL图书管理系统

使用说明

如需要完整的源码和数据库可以关注vx公主好麻了秃头。需要其他系统源码也可以到秃头上查看详情。
资源目录:https://note.youdao.com/s/683k702O

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

麻了秃头

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

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

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

打赏作者

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

抵扣说明:

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

余额充值