<?php
// 导入公共文件
require_once("./db.php");
// 一页多少条数据
$pagesize = 2;
// 页码,默认 1
$page = isset($_GET['page']) ? $_GET['page'] : 1;
// 开始行号
$startRow = max(($page - 1), 0) * $pagesize;
// 执行查询语句
$sql = "select * from user";
$result = mysqli_query($link, $sql);
// 总条数
$count = mysqli_num_rows($result);
// 总页数
$pages = ceil($count / $pagesize);
// 构建查询分页 sql 语句,注意我这里用的 `.=` 也就是用上面的 sql 语句拼接下面的 sql 语句
$sql .= " order by id asc limit {$startRow},{$pagesize}";
// 再次执行查询语句
$result = mysqli_query($link, $sql);
// 获取所有行数据
$arrs = mysqli_fetch_all($result, MYSQLI_ASSOC);
// print_r($arrs);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
// 添加用户
function addUser() {
location.href = "./add.php";
}
// 删除用户
function deleteUser(id) {
// 询问是否删除
if (window.confirm("确定要删除吗?")) {
// 跳转到 delete.php 页面进行删除,只要不是表单发送的都是 GET 请求
location.href = "./delete.php?id="+id;
}
}
// 修改用户
function modifyUser(id) {
// 跟添加一样,跳转新页面即可
}
</script>
</head>
<body style="display: flex; align-items: center; flex-direction: column;">
<!-- 提示 -->
<h2>总共有 <?php echo $count ?> 个人</h2>
<a href="#" onclick="addUser()" style="margin-bottom: 20px;">添加用户</a>
<!-- 列表 -->
<table width="300" border="1" rules="all" cellpadding="5">
<!-- 头部 -->
<tr bgcolor="#ccc">
<th>id</th>
<th>名称</th>
<th>年龄</th>
<th>操作</th>
</tr>
<!-- 展示数据 -->
<?php foreach ($arrs as $arr) { ?>
<tr style="text-align: center;">
<td><?php echo $arr["id"] ?></td>
<td><?php echo $arr["name"] ?></td>
<td><?php echo $arr["age"] ?></td>
<!-- 操作 -->
<td>
<a href="#" onclick="modifyUser(<?php echo $arr['id'] ?>)">修改</a>
<!-- 删除用户操作 -->
<a href="#" onclick="deleteUser(<?php echo $arr['id'] ?>)">删除</a>
</td>
</tr>
<?php } ?>
</table>
<!-- 分页器 -->
<div style="margin-top: 20px;">
<!-- 写法一:列出所有页码 -->
<!-- <?php for ($i=1; $i <= $pages; $i++) { ?>
<a href="?page=<?php echo $i ?>"><?php echo $i ?></a>
<?php } ?> -->
<!-- 写法二:列出所有页码,当前页不可点 -->
<!-- <?php
for ($i=1; $i <= $pages; $i++) {
// echo "<a href='index.php?page=$i'>$i</a>";
// 推荐简写成这样,这样可以使用各种文件目录场景:
// echo "<a href='?page=$i' style='padding: 5px;'>$i</a>";
// 判断当前页不能点击
if ($page == $i) {
echo "<span style='padding: 5px;'>$i</span>";
}else {
echo "<a href='?page=$i' style='padding: 5px;'>$i</a>";
}
}
?> -->
<!-- 写法三:列出所有页码,当前页不可点,且不一次性展示所有分页,只展示前后2页页码 -->
<?php
$start = max($page - 2, 1);
$end = min($page + 2, $pages);
for ($i=$start; $i <= $end; $i++) {
if ($page == $i) {
echo "<span style='padding: 5px;'>$i</span>";
}else {
echo "<a href='?page=$i' style='padding: 5px;'>$i</a>";
}
}
?>
</div>
</body>
</html>