• 技术文章 >php教程 >PHP源码

    php mysql 分页显示代码

    2016-06-08 17:25:05原创392
    一款由网页提供的php mysql 分页显示代码,样式比较多有需要的朋友可以下载使用。

    先我们来看看分页的效果,如果是你想要的就可以下载了。

    p.php教程分页类的核心代码

    代码如下 复制代码

    /*

    php 分页类
    只要实现分页。不与数据库教程连接。

    如果是伪静态 只需修改84行以下的A标签即可 如 "".$i."" (index_表示你的伪静态地址) 其他的A标签页是一样

    */

    /*

    鄙人工作时间写了个简单实用的 php 分页类 现和大家分享。。

    QQ:348145486

    email: tzk_php@163.com

    欢迎大家一起学习交流

    */


    class Page{

    public $page_size="20"; //每页显示的数据数目
    public $page_num; //总的数据数目
    public $page_url=""; //分页的当前URL
    public $pageval; //分页的当前页
    public $page_ys; //总的页数
    public $page_tf=false; //判断能否执行分页的值
    public $page;

    /**********初始化分页类************/

    function __construct($page_num,$page_size=""){
    $this->page_num=$page_num; //获取所有需要显示的数据数目

    if($page_size!=""){
    $this->page_size=$page_size; //获取每页显示数据数据
    }

    $this->page_url=$_SERVER['SCRIPT_NAME']; //获取当前的URL地址

    if($this->page_num>$this->page_size){ //判断是否能执行分页
    $this->page_ys=ceil($this->page_num/$this->page_size); //获取总的分页数
    $this->page_tf=true; //将分页权限复制以便下面再次判断
    }

    if(!empty($_GET['page'])){ //只允许页码在分页数范围内
    if($_GET['page']>="1"){
    if($_GET['page']<=$this->page_ys){
    $this->pageval=$_GET['page'];
    }else{
    $this->pageval=$this->page_ys;
    }
    }else{
    $this->pageval="1";
    }
    }else{
    $this->pageval="1";
    }

    $this->page=($this->pageval-1)*$this->page_size; //查询数据库数据时的第一条数据

    }

    /************执行分页 返回分页按钮**********/


    function page_fy($val=""){
    if($this->page_tf==true){
    if($val==""){
    return $this->page_style_one();
    }else if ($val=="1"){
    return $this->page_style_two();
    }elseif ($val=="2"){
    return $this->page_style_three();
    }
    }
    }

    /**********分页按钮 样式一*********/

    function page_style_one(){
    if($this->pageval=="1"){
    $up="1";
    }else{
    $up=$this->pageval-1;
    }

    if($this->pageval>=$this->page_ys){
    $down=$this->page_ys;
    }else{
    $down=$this->pageval+1;
    }
    $one="首页";
    $two="上一页";
    $three="下一页";
    $four="末页";
    return $page_echo = $one.$two.$three.$four;
    }

    /***********分页按钮 样式二*************/

    function page_style_two(){ //下面这个呢,逻辑很复杂,思维很林乱,
    $page_echo="";
    if($this->pageval=="1"){
    $up="1";
    }else{
    $up=$this->pageval-1;
    }

    if($this->pageval>=$this->page_ys){
    $down=$this->page_ys;
    }else{
    $down=$this->pageval+1;
    }
    $two="上一页";
    $three="下一页";

    if($this->page_ys>"6"){

    if($this->pageval<=3){
    $i=2;
    $i_to=5;
    }elseif ($this->pageval>=($this->page_ys-2)){
    $i=$this->page_ys-4;
    $i_to=$this->page_ys-1;
    }else{
    $i=$this->pageval-2;
    $i_to=$this->pageval+2;
    }

    if($this->pageval>4){
    $page_one="...";
    }else{
    $page_one="";
    }

    if($this->pageval<($this->page_ys-3)){
    $page_two="...";
    }else{
    $page_two="";
    }

    for ($i;$i<=$i_to;$i++){
    $page_echo.="".$i.""; //如果是伪静态 只需修改A标签即可 如 "".$i."" 其他的A标签页是一样
    }

    }else{
    for ($i=2;$i<=($this->page_ys-1);$i++){
    $page_echo.="".$i."";
    }

    }

    return $two."1".$page_one.$page_echo.$page_two."".$this->page_ys."".$three;

    }

    /*****************分页按钮 样式三 样式3大家可以写了。 *******************/

    function page_style_three(){
    return $this->page_style_two();
    }

    }
    ?>

    调用方法

    代码如下 复制代码


    include 'p.php'; //载入分页类库

    $page=new Page('12345',"10"); //实例化类库 312 为显示的总条数 10 为每页显示的条数


    echo "样式二
    ";
    echo "
    ";
    echo "
    ";
    echo $page->page_fy('1'); //使用分页样式

    echo "
    ";echo "
    ";echo "
    ";echo "
    ";


    echo "样式一
    ";
    echo "
    ";
    echo "
    ";
    echo $page->page_fy(); //使用分页样式


    ?>

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp quot Page this gt
    上一篇:php显示文章 几分钟前,几小时前,几天前发布类 下一篇:php分页函数应用及实现原理详解
    千万级数据并发解决方案

    相关文章推荐

    • php 完整图片按比例生成缩略图代码• php 广告点击统计代码• 戏说PHP框架的味道• 动态网页制作PHP常用的正则表达式• uploadify+PHPExcel无刷新导入数据-完善中3
    1/1

    PHP中文网