zoukankan      html  css  js  c++  java
  • 管理系统案例

    一、建立数据库

    二、首页展示

    <?php
        //1.建立连接
        $conn=mysqli_connect('localhost','root','0000','test');
        if(!$conn){
            exit('<h1>数据库连接失败</h1>');
        }
        //2.开始查询
        $query=mysqli_query($conn,'select * from users;');
        if(!$query){
            exit('<h1>查询过程失败</h1>');
        }
        ///3.遍历结果集
        // while($item=mysqli_fetch_assoc($query)){
        //     var_dump($item);
        // }
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>管理系统</title>
        <link rel="stylesheet" href="bootstrap.css">
    </head>
    <body>
        <nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
            <a class="navbar-brand" href="#">管理系统</a>
            <ul class="navbar-nav mr-auto">
                <li class="nav-item active">
                    <a class="nav-link" href="index.php">用户管理</a>
                </li>
                <li class="nav-item">
                    <a class="nav-link" href="#">商品管理</a>
                </li>
            </ul>
        </nav>
        <main class="container mt-5">
            <h1 class="alert-heading">用户管理
                <a class="btn btn-link btn-sm" href="add.php">添加</a>
            </h1>
            <table class="table table-hover">
                <thead>
                    <tr>
                        <th>#</th>
                        <th>头像</th>
                        <th>姓名</th>
                        <th>性别</th>
                        <th>年龄</th>
                        <th class="text-center" width="140">操作</th>
                    </tr>
                </thead>
                <tbody>
                    <?php while($item=mysqli_fetch_assoc($query)): ?>
                    <tr>
                        <th scope="row"><?php echo $item['id'] ?></th>
                        <td>
                            <img src="<?php echo $item['avatar']; ?>" class="rounded" alt="<?php echo $item['name']; ?>">
                        </td>
                        <td><?php echo $item['name']; ?></td>
                        <td><?php echo $item['gender']==0?'男':'女'; ?></td>
                        <td><?php echo $item['birthday']; ?></td>
                        <td class="text-center">
                            <a class="btn btn-info btn-sm" href="edit.php?id=<?php echo $item['id']?>">编辑</a>
                            <a class="btn btn-danger btn-sm" href="delete.php?id=<?php echo $item['id']?>">删除</a>
                        </td>
                    </tr>
                    <?php endwhile ?>
                </tbody>
            </table>
            <ul class="pagination justify-content-center">
                <li class="page-item"><a class="page-link" href="#">&laquo;</a></li>
                <li class="page-item"><a class="page-link" href="#">1</a></li>
                <li class="page-item"><a class="page-link" href="#">2</a></li>
                <li class="page-item"><a class="page-link" href="#">3</a></li>
                <li class="page-item"><a class="page-link" href="#">&raquo;</a></li>
            </ul>
        </main>
    </body>
    </html>

    三、删除功能实现

    <?php
        //接收要删除的数据 ID
        if(empty($_GET['id'])){
            exit('<h1>必须传入指定参数</h1>');
        }
        $id=$_GET['id'];
        //建立连接
        $conn=mysqli_connect('localhost','root','0000','test');
        if(!$conn){
            exit('<h1>数据库连接失败</h1>');
        }
        //开始查询
        $query=mysqli_query($conn,'delete from users where id= ' . $id .';');
        if(!$query){
            exit('<h1>查询数据失败</h1>');
        }
        $affected_rows=mysqli_affected_rows($conn);
        if($affected_rows<=0){
            exit('<h1>删除数据失败</h1>');
        }
        //跳转页面
        header('Location: index.php');
    
    ?>

     四、添加功能的实现

    <?php 
        function add_user(){
            //1.验证非空
            if(empty($_POST['coding'])){
                $GLOBALS['error_message']='请输入编码';
                return;
            }
            if(empty($_POST['name'])){
                $GLOBALS['error_message']='请输入姓名';
                return;
            }
            if(!isset($_POST['gender']) && $_POST['gender']!=='-1'){
                $GLOBALS['error_message']='请输入性别';
                return;
            }
            if(empty($_POST['birthday'])){
                $GLOBALS['error_message']='请输入日期';
                return;
            }
            //2.取值
            $coding=$_POST['coding'];
            $name=$_POST['name'];
            $gender=$_POST['gender'];
            $birthday=$_POST['birthday'];
            //3.接收文件并验证
            if(empty($_FILES['avatar'])){
                $GLOBALS['error_message']='请上传头像';
                return;
            }
            $ext=pathinfo($_FILES['avatar']['name'],PATHINFO_EXTENSION);//扩展名==>jpg
            $target='uploads/' . uniqid() . '.' .$ext;
            if(!move_uploaded_file($_FILES['avatar']['tmp_name'],$target)){
                $GLOBALS['error_message']='上传头像失败';
                return;
            } 
            $avatar=$target;
            //4.保存
            $conn=mysqli_connect('localhost','root','0000','test');
            if(!$conn){
                $GLOBALS['error_message']='连接数据库失败';
                return;
            }
            $query=mysqli_query($conn,"insert into users values({$coding},'{$name}',{$gender},'{$birthday}','{$avatar}');");
            if(!$query){
                $GLOBALS['error_message']='查询过程失败';
                return;
            }
            $affectd_rows=mysqli_affected_rows($conn);
            if($affectd_rows!==1){
                $GLOBALS['error_message']='添加数据失败';
                return;
            }
            //5.响应
            header('Location: index.php');
        }
        if($_SERVER['REQUEST_METHOD']==='POST'){
            add_user();
        }
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>添加数据</title>
        <link rel="stylesheet" href="bootstrap.css">
    </head>
    <body>
        <nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
            <a href="#" class="navbar-brand">管理系统</a>
            <ul class="navbar-nav mr-auto">
                <li class="nav-item active">
                    <a href="index.php" class="nav-link">用户管理</a>
                </li>
                <li class="nav-item active">
                    <a href="#" class="nav-link">商品管理</a>
                </li>
            </ul>
        </nav>
        <main class="container mt-5">
            <h1 class="alert-heading">添加用户</h1>
            <?php if(isset($error_message)): ?>
                <div class="alert alert-warning">
                    <?php echo $error_message; ?>
                </div>
            <?php endif ?>
            <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" autocomplete="off">
                <div class="form-group">
                    <label for="avatar">头像</label>
                    <input type="file" name="avatar" id="avatar" class="form-control">
                </div>
                <div class="form-group">
                    <label for="coding">编号</label>
                    <input type="text" name="coding" id="coding" class="form-control">
                </div>
                <div class="form-group">
                    <label for="name">姓名</label>
                    <input type="text" name="name" id="name" class="form-control">
                </div>
                <div class="form-group">
                    <label for="gender">性别</label>
                    <select name="gender" id="gender" class="form-control">
                        <option value="-1">请选择性别</option>
                        <option value="0">男</option>
                        <option value="1">女</option>
                    </select>
                </div>
                <div class="form-group">
                    <label for="birthday">生日</label>
                    <input type="date" name="birthday" id="birthday" class="form-control">
                </div>
                <button class="btn btn-primary">保存</button>
            </form>
        </main>
    </body>
    </html>

    五、编辑功能的实现

    <?php
        //接收需要修改的ID
        if(empty($_GET['id'])){
            exit('<h1>必须传入指定参数</h1>');
        }
        $id=$_GET['id'];
        //建立连接
        $conn=mysqli_connect('localhost','root','0000','test');
        if(!$conn){
            exit('<h1>数据库连接失败</h1>');
        }
        //开始查询(因为ID是唯一的,找到第一个满足条件的就不用继续了)
        $query=mysqli_query($conn,"select *from users where id={$id} limit 1;");
        if(!$query){
            exit('<h1>查询数据失败</h1>');
        }
        $user=mysqli_fetch_assoc($query);
        if(!$user){
            exit('<h1>找不到你要编辑的数据</h1>');
        }
        function edit(){
            global $user;
            //1.验证非空
            if(empty($_POST['name'])){
                $GLOBALS['error_message']='请输入姓名';
                return;
            }
            if(!isset($_POST['gender']) && $_POST['gender']!=='-1'){
                $GLOBALS['error_message']='请输入性别';
                return;
            }
            if(empty($_POST['birthday'])){
                $GLOBALS['error_message']='请输入日期';
                return;
            }
            //2.取值
            $user['name']=$_POST['name'];
            $user['gender']=$_POST['gender'];
            $user['birthday']=$_POST['birthday'];
            //3.有上传就修改(用户上传了新头像)
            if(isset($_FILES['avatar']) && $_FILES['avatar']['error']===UPLOAD_ERR_OK){
                $ext=pathinfo($_FILES['avatar']['name'],PATHINFO_EXTENSION);
                $target='uploads/'. uniqid() . '.' .$ext;
                if(!move_uploaded_file($_FILES['avatar']['tmp_name'],$target)){
                    $GLOBALS['error_message']='上传头像失败';
                    return;
                }
                $user['avator']=$target;
            }
            //4.保存
            $conn=mysqli_connect('localhost','root','0000','test');
            if(!$conn){
                $GLOBALS['error_message']='连接数据库失败';
                return;
            }
            $query=mysqli_query($conn,"update users set name='{$user['name']}',gender={$user['gender']},birthday='{$user['birthday']}',avatar='{$user['avatar']}' where id={$user['id']}");
            if(!$query){
                $GLOBALS['error_message']='查询过程失败';
                return;
            }
            $affectd_rows=mysqli_affected_rows($conn);
            if($affectd_rows!==1){
                $GLOBALS['error_message']='添加数据失败';
                return;
            }
            //5.响应
            header('Location: index.php');
        }
        if($_SERVER['REQUEST_METHOD']==='POST'){
            edit();
        }
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>编辑数据</title>
        <link rel="stylesheet" href="bootstrap.css">
    </head>
    <body>
        <nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
            <a href="#" class="navbar-brand">管理系统</a>
            <ul class="navbar-nav mr-auto">
                <li class="nav-item active">
                    <a href="index.php" class="nav-link">用户管理</a>
                </li>
                <li class="nav-item active">
                    <a href="#" class="nav-link">商品管理</a>
                </li>
            </ul>
        </nav>
        <main class="container mt-5">
            <h1 class="alert-heading">编辑"<?php echo $user['name']; ?>"</h1>
            <?php if(isset($error_message)): ?>
                <div class="alert alert-warning">
                    <?php echo $error_message; ?>
                </div>
            <?php endif ?>
            <form action="<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $user['id']; ?>" method="post" enctype="multipart/form-data" autocomplete="off">
                <img src="<?php echo $user['avatar']; ?>" alt="">
                <div class="form-group">
                    <label for="avatar">头像</label>
                    <input type="file" name="avatar" id="avatar" class="form-control">
                </div>
                    <input type="hidden" name="coding" id="coding" class="form-control" value="<?php echo $user['id']; ?>">
                <div class="form-group">
                    <label for="name">姓名</label>
                    <input type="text" name="name" id="name" class="form-control" value="<?php echo $user['name']; ?>">
                </div>
                <div class="form-group">
                    <label for="gender">性别</label>
                    <select name="gender" id="gender" class="form-control">
                        <option value="-1">请选择性别</option>
                        <option value="0"<?php echo $user['gender']==='0'? 'selected':''; ?>>男</option>
                        <option value="1"<?php echo $user['gender']==='1'? 'selected':''; ?>>女</option>
                    </select>
                </div>
                <div class="form-group">
                    <label for="birthday">生日</label>
                    <input type="date" name="birthday" id="birthday" class="form-control" value="<?php echo $user['birthday']; ?>">
                </div>
                <button class="btn btn-primary">保存</button>
            </form>
        </main>
    </body>
    </html>

    六、文件夹:

    七、效果展示

  • 相关阅读:
    MySQL —— 程序连接时的驱动名称和URL
    这该称作什么效应?
    Java 基础 面向对象之关键字内部类代码块修饰符
    Java 基础 面向对象之构造方法和关键字
    Java 基础 接口和多态
    Java 基础 面向对象和抽象类
    Java 基础 引用数据类型 ArrayList集合
    Java 基础 方法
    Java 基础 引用数据类型 和 流程控制
    Mongodb 基础 复制集原理和搭建
  • 原文地址:https://www.cnblogs.com/EricZLin/p/9209794.html
Copyright © 2011-2022 走看看