原生php分页功能-源码

欢迎加入qq群(IT-程序猿-技术交流群):757345416

代码如下:

<?php    
$link=@MySQL_connect('localhost','root','密码');
mysql_select_db('数据库',$link);
mysql_query('set names utf8');
$result=mysql_query("select * from 表名");
$count = mysql_num_rows($result);

$Page_size=9; //分页条数
$page_count = ceil($count/$Page_size); //总页数
$init = 1; $page_len = 5; //显示页码数
$max_p=$page_count; //最大页数 
$pages=$page_count; //总页数

//判断当前页码 
if(empty($_GET['page'])||$_GET['page']<0){
    $page=1; 
}else {
    $page=$_GET['page']; 
}
$page_len = ($page_len%2)?$page_len:$pagelen+1; //页码个数 
$pageoffset = ($page_len-1)/2; //页码个数左右偏移量 
$offset = $Page_size*($p-1); 
$sql="select * from 表名 limit $offset,$Page_size";
$result=mysql_query($sql);
$page_page = '';//1、得到 总页数 $pages 、 每页数 $Page_size、 显示页数 $page_len
$page_page .= "$page/$pages 页";
if($page!=1){ 
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=1\">第一页</a> "; //第一页 
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=".($page-1)."\">上一页</a>"; //上一页 
}else {
$key.=" 上一页 "; //上一页 
$key.=" 最后一页"; //最后一页 
} 
if($pages>$page_len){
//如果当前页小于等于左偏移 
    if($page<=$pageoffset){
        $init=1; 
        $max_p = $page_len; 
    }else{
//如果当前页大于左偏移
//如果当前页码右偏移超出最大分页数 
        if($page+$pageoffset>=$pages+1){ 
            $init = $pages-$page_len+1;
        }else{ 
//左右偏移都存在时的计算
            $init = $page-$pageoffset; 
            $max_p = $page+$pageoffset; 
        }
    }
}
//输出页码
for($i=$init;$i<=$max_p;$i++){
    if($i==$page){
        $key.=' <span>'.$i.'</span>'; 
    } else { 
        $key.=" <a href=\"".$_SERVER['PHP_SELF']."?page=".$i."\">".$i."</a>";
    } 
}
if($page!=$pages){ 
$key.=" <a href=\"".$_SERVER['PHP_SELF']."?page=".($page+1)."\">下一页</a> ";//下一页
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page={$pages}\">最后一页</a>"; //最后一页
}else {
    $key.=" 下一页 "; 
//下一页$key.=" 最后一页 ";//最后一页
}
echo $key; //输出分页 

文章到此结束,希望对你的学习有帮助!

猜你喜欢

转载自blog.csdn.net/qq_42817227/article/details/81943960