
<?php
//分页操作
//流程
//1.连接数据库,2查询数据库,并遍历出来,3.建立table布局,在页面上显示出来
//前提,规划好每个页面展示的记录条数$num,之后算出总共需要几个页面$page
//设置好$num,获取$page
$num = 4;
$page = isset($_GET['p'])?$_GET['p']:1;
//设置偏移量
$offset = ($page-1)*$num;
$dsn = 'mysql:host=localhost;dbname=demo1';
$dbName = 'root';
$dbPassword = 'root';
//在建立了源数据,数据库登录用户名及密码,new一个pdo对象
$pdo = new PDO($dsn,$dbName,$dbPassword);
//连接好之后,准备查询语句
$sql = "SELECT `id`,`name`,`email` FROM `userLog` LIMIT :offset,:num";
//生成预处理对象,绑定参数
$pdoStmt = $pdo->prepare($sql);
$pdoStmt->bindParam(':offset',$offset,PDO::PARAM_INT);
$pdoStmt->bindParam(':num',$num,PDO::PARAM_INT);
//执行查询语句
$result = $pdoStmt->execute();
//echo $pdoStmt->rowCount();//测试有没有查询到值
//if (true == $result)
//{
// echo '<table cellpadding="5" cellspacing="0">';
// echo '<tr bgcolor="#87ceeb"><th>ID</th><th>NAME</th><th>EMAIL</th></tr>';
//这里直接用foreach($pdoStmt as $row)
// while($row = $pdoStmt->fetch())
// {
// echo '<tr>';
// echo '<td>'.$row['id'].'</td><td>'.$row['name'].'</td><td>'.$row['email'].'</td>';
// echo '</tr>';
// }
// echo '</table>';
//}
//计算共计多少页
$pdoStmt2 = $pdo->prepare("SELECT * FROM userLog");
$pdoStmt2->execute();
$totalPage = ceil($pdoStmt2->rowCount()/$num);//这里ceil()是向上取整
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="dist/css/bootstrap.css">
<script src="jquery-3.2.1.js"></script>
<script src="dist/js/bootstrap.js"></script>
<title>用户信息表</title>
</head>
<body>
<div class="container">
<div class="row" align="center">
<h3 align="center">用户信息表</h3>
<table class="table table-bordered table-striped">
<tr class="bg-info">
<th>ID</th><th>NAME</th><th>EMAIL</th>
</tr>
<?php foreach($pdoStmt as $row): ?>
<tr>
<td><?php echo $row['id']; ?></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['email']; ?></td>
</tr>
<?php endforeach; ?>
</table>
</div>
<nav aria-label="Page navigation" class="row text-center">
<ul class="pagination">
<li>
<a href="http://localhost/logDemo/admin.php?p=<?php echo $page=($page==1)?$page:($page-1); ?>" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
<li><a href="http://localhost/logDemo/admin.php?p=1">首页</a></li>
<?php
for ($i=1; $i<=$totalPage; $i++)
{
echo '<li><a href="http://localhost/logDemo/admin.php?p='.$i.'">'.$i.'</a></li>';
}
?>
<li><a href="http://localhost/logDemo/admin.php?p=<?php echo $totalPage; ?>">尾页</a></li>
<li>
<a href="http://localhost/logDemo/admin.php?p=<?php echo $page=($page==$totalPage)?$totalPage:($page+1); ?>" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
</nav>
</div>
</body>
</html>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号