index.php
<?php
//1、数据库的连接
$connect=mysqli_connect('192.168.0.108','root','zq1410477891','text');
if(!$connect){
exit('数据库连接失败');
}
//设置字符问题
mysqli_set_charset($connect,'utf8');
//接收数据集
$query=mysqli_query($connect,'select *from users');
//拆分数据集
if(!$query){
exit(查询失败);
}
date_default_timezone_set('PRC');
$date=date('Y-m-d',time());
$date1=substr($date, 0,4);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>XXX管理系统</title>
<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
<a class="navbar-brand" href="#">XXX管理系统</a>
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="index.html">用户管理</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">商品管理</a>
</li>
</ul>
</nav>
<main class="container">
<h1 class="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 ($row=mysqli_fetch_assoc($query)): ?>
<tr>
<th><?php echo $row['id']; ?></th>
<td><img src="<?php echo $row['avatar']; ?>" ></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['gender']==0?'♀':'♂' ;?></td>e
<td><?php
$bir=substr($row['birthday'], 0,4);
$age=$date1- $bir;
echo $age;
?></td>
<td>
<a class="btn btn-info btn-sm" href="edit.php?id=<?php echo $row['id']; ?>">编辑</a>
<a href="delete.php?id=<?php echo $row['id']; ?>" class="btn btn-danger btn-sm">删除</a>
</td>
</tr>
<?php endwhile ?>
</tbody>
</table>
<ul class="pagination justify-content-center">
<li class="page-item"><a class="page-link" href="#">«</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="#">»</a></li>
</ul>
</main>
</body>
</html>
add.php
<?php
function addusers(){
GLOBAL $message;
//验证头像
if (empty($_FILES['images'])) {
# code...
$message = '请上传头像';
return;
}
$images=$_FILES['images'];
//验证图片类型
$allow_arr=array('image/png','image/jpg','image/jpeg');
if(!in_array($images['type'], $allow_arr)){
$message='图片类型不支持';
return;
}
//验证头像大小
if($images['size'] > 1 * 1024 * 1024){
$message='上传的图片内存太大';
return;
}
//验证有没有输入姓名
if(empty($_POST['name'])){
$message='请输入姓名';
return;
}
$name=$_POST['name'];
//验证有没有输入性别
if (!(isset($_POST['gender']) && $_POST['gender'] !== '-1')) {
$message = '请选择性别';
return;
}
$gender=$_POST['gender'];
//验证有没有输入出生年月
if(empty($_POST['birthday'])){
$message='请输入出生年月';
return;
}
$birthday=$_POST['birthday'];
//从新给图片取名字pathinfo获取图片的后缀
$target='./img/images-'.uniqid().'.'.pathinfo($images['name'],PATHINFO_EXTENSION);
if(!move_uploaded_file($images['tmp_name'], $target)){
$message='图片移动失败';
return;
}
//保存图片的路径
$img=substr($target, 2);
//var_dump($name);
//var_dump($images);
//var_dump($img);
//var_dump($gender);
//连接数据库
$connect=mysqli_connect('192.168.0.108','root','zq1410477891','text');
//验证数据库连接是否成功
if(!$connect){
$message='数据库连接失败';
}
//建立数据集
$query=mysqli_query($connect,"insert into users values (null, '{$name}', {$gender}, '{$birthday}', '{$img}');");
if(!$query){
$message='数据查询失败';
return;
}
$row=mysqli_affected_rows($connect);
if($row!==1){
$message='数据插入失败';
return;
}
header('Location:index.php');
};
if($_SERVER['REQUEST_METHOD']=='POST'){
addusers();
}
?>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>XXX管理系统</title>
<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
<a class="navbar-brand" href="#">XXX管理系统</a>
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="index.html">用户管理</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">商品管理</a>
</li>
</ul>
</nav>
<main class="container">
<h1 class="heading">添加用户</h1>
<form autocomplete="off" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">
<?php if (isset($message)): ?>
<div class="form-group">
<div class="alert alert-danger" role="alert">
<?php echo $message; ?>
</div>
</div>
<?php endif ?>
<div class="form-group">
<label for="images">头像</label>
<input type="file" name="images" id="images" class="form-control" accept="image/*">
</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 class="form-control" id="gender" name="gender">
<option value="-1">请选择性别</option>
<option value="1">男</option>
<option value="0">女</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-block btn-primary">提交</button>
</form>
</main>
</body>
</html>
delete.php
<?php
if (empty($_GET['id'])) {
# code...
exit('请选择要删除的项');
}
$id=$_GET['id'];
//连接数据库
$connect=mysqli_connect('192.168.0.108','root','zq1410477891','text');
//验证数据库连接是否成功
if(!$connect){
exit('数据库连接失败');
}
//查询数据集
$query=mysqli_query($connect,'delete from users where id='.$id.';');
//检验查询数据是否成功
if(!$query){
exit('查询失败');
}
$affected_rows=mysqli_affected_rows($connect);
//一行一行取数据
//最好写非,逻辑清楚
if ($affected_rows<=0) {
# code...
exit('删除失败');
}
header('Location:index.php');
?>
edit.php
<?php
// 接收要修改的数据 ID
if (empty($_GET['id'])) {
exit('<h1>必须传入指定参数</h1>');
}
$id = $_GET['id'];
// 1. 建立连接
$conn = mysqli_connect('192.168.0.108', 'root', 'zq1410477891', 'text');
if (!$conn) {
exit('<h1>连接数据库失败</h1>');
}
// 2. 开始查询
// 因为 ID 是唯一的 那么找到第一个满足条件的就不用再继续了 limit 1
$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;
GLOBAL $message;
// 验证非空
if (empty($_POST['name'])) {
$message= '请输入姓名';
return;
}
if (!(isset($_POST['gender']) && $_POST['gender'] !== '-1')) {
$message= '请选择性别';
return;
}
if (empty($_POST['birthday'])) {
$message= '请输入日期';
return;
}
// 取值
$name= $_POST['name'];
$gender = $_POST['gender'];
$birthday = $_POST['birthday'];
$id=$user['id'];
// 有上传就修改
if (isset($_FILES['images']) && $_FILES['images']['error'] === UPLOAD_ERR_OK) {
// 用户上传了新头像 -> 用户希望修改头像
$ext = pathinfo($_FILES['images']['name'], PATHINFO_EXTENSION);
$target = './img/images-' . uniqid() . '.' . $ext;
if (!move_uploaded_file($_FILES['images']['tmp_name'], $target)) {
$message= '上传头像失败';
return;
}
$avatar= substr($target, 2);
}
//var_dump( $user);
// $user => 修改过后的信息
// TODO: 将数据更新回数据库
$conn = mysqli_connect('192.168.0.108', 'root', 'zq1410477891', 'text');
$query=mysqli_query($conn,"update users set name='{$name}',gender='{$gender}',birthday='{$birthday}',avatar='{$avatar}'where id='{$id}'");
if(mysqli_affected_rows($conn)!==1){
$message='数据更新失败,插入失败';
return;
}
header('Location:index.php');
}
//header('Location:index.php');
if($_SERVER['REQUEST_METHOD']=='POST'){
edit();
}
>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>XXX管理系统</title>
<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<nav class="navbar navbar-expand navbar-dark bg-dark fixed-top">
<a class="navbar-brand" href="#">XXX管理系统</a>
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="index.html">用户管理</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">商品管理</a>
</li>
</ul>
</nav>
<main class="container">
<h1 class="heading">编辑学生<?php echo $user['name']; ?>信息</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $user['id']; ?>" method="post" enctype="multipart/form-data">
<!-- <input type="hidden" id="id" value="<?php echo $user['id']; ?>"> -->
<img src="<?php echo $user['avatar']; ?>" alt="">
<div class="form-group">
<label for="images">头像</label>
<!-- 文件域不能设置默认值 -->
<input type="file" class="form-control" id="images" name="images">
</div>
<div class="form-group">
<label for="name">姓名</label>
<input type="text" class="form-control" id="name" name="name" value="<?php echo $user['name']; ?>">
</div>
<div class="form-group">
<label for="gender">性别</label>
<select class="form-control" id="gender" name="gender">
<option value="-1">请选择性别</option>
<option value="1"<?php echo $user['gender'] === '1' ? ' selected': ''; ?>>男</option>
<option value="0"<?php echo $user['gender'] === '0' ? ' selected': ''; ?>>女</option>
</select>
</div>
<div class="form-group">
<label for="birthday">生日</label>
<input type="date" class="form-control" id="birthday" name="birthday" value="<?php echo $user['birthday']; ?>">
</div>
<button class="btn btn-primary">保存</button>
</form>
</main>
</body>
</html>