在网站中,如果list页内容太多,一般会设置分页功能,今天我们一起来研究一下分页原理,通过一个小案例实现这个功能.
分页原理
分页显示,将从mysql数据库取出的数据有规律的一段段展示,利用sql语句中的limit将它的起始数据跟页数绑定,根据页数去数据库取数据 (推荐学习:php视频教程)
实现流程
1.获取当前url字符串,并用parse_url解析得到url数组
2.连接服务器,获取list页将要展示的内容集合,统计总共展示的条数,进而算出总共多少页内容
3.判断页面是否是提交状态,如果不是默认为第一页$pageval
4.将计算的limit起始位置赋值给变量$page
5.使用$page和$pagesize去数据库取数据
6.循环便利得数据集合,输出展示在页面上
具体代码如下
$url = $_server['request_uri'];$url = parse_url($url);$url = $url['path'];$pagesize = 4;//连接服务器$link = mysqli_connect('127.0.0.1','root',12345678,'bbs');$res = mysqli_query($link,'select * from fenye');$num = mysqli_num_rows($res);$pagenum = ceil($num/$pagesize);//判断页面是否是提交状态if ( isset($_get['page']) && $_get['page'] >1) { $pageval = $_get['page'];}else { $pageval = 1;}//计算起始位置$page = ($pageval-1)*$pagesize;//去数据库取数据$res = $mysqli_query($link,"select * from fenye limit $page,$pagesize");//如果$res有值,则循环便利结果展示输出在页面if ($res) { while( $row = mysqli_fetch_assoc($res) ) { echo $row['name']. '|'.$row['age'].'<br/>'; }}//html添加页数部分<a href="?page=1">1</a>;<a href="?page=2">2</a>;<a href="?page=3">3</a>;<a href="?page=4">4</a>;<a href="?page=5">5</a>;总共<?php echo $pagenum; ?>页,当前在<?php echo $pageval;?>页
以上就是php分页功能怎么实现的详细内容。