分页(上一页,下一页)

来源:互联网 发布:女神的标准知乎 编辑:程序博客网 时间:2024/04/28 04:10

实现功能:出现首页,下一页,上一页,尾页

<?php
$pagesize=2;//分页,已知每页显示几条记录,$pagesize
//我们通过在地址栏传递page参数的形式获得当前是第几页,?page=1就是第一页,?page=2就是第二页

/*
page      offset   pagesize
1 0     2
2 2     2
3 4     2
 .....
*/
 
$page=isset($_GET['page'])?$_GET['page']:1;//当前是第几页
$offset=$pagesize*($page-1);//跳过的数量

include 'includes/db.class.php';
$db=new db('localhost','root','123','ecshop_test');
$sql="select * from brand limit $offset,$pagesize";//限每页制出2个内容
//var_dump($sql);
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
 echo $row["brand_name"];
 echo "<br>";//得到要显示的内容
 
 }
//总的记录数,*代表数据表中的字段,任何一个字段
$sql="select count(*) as total from brand";
$result=mysql_query($sql);
$row=mysql_fetch_assoc($result);
$total_rows=$row['total'];//总共多少条内容
//var_dump($row);//array(1) { ["total"]=> string(2) "11" }

//总的页数,通过总的记录数和每页显示的记录数
$total_page=ceil($total_rows/$pagesize);//ceil(x),函数向上舍入为最接近的整数。x 如果有小数部分则进一位
//echo $total_page;

//开始写html代码  就是分页显示的上一页
echo '<a href="fenye.php"> 首页</a>';
//如果当前也是首页的话 不显示上一页
if($page>1){
echo '<a href="fenye.php?page='.($page-1).'">上一页</a>';}
//当前是尾页的时候 不显示下一页
if($page<$total_page){
 echo '<a href="fenye.php?page='.($page+1).'">下一页</a>';
 }
 echo '<a href="fenye.php?page='.($total_page).'">尾页</a>';


?>