zoukankan      html  css  js  c++  java
  • 用PHP写的一个简单的分页类 1.0版

     

    <?php
    /*
    分页类 用于实现对多条数据分页显示 
    version:1.0
    author:Knight
    E-Mail:S.Knight.Work@gmail.com
    Date:2013-10-20
    */

    /*
    调用非常方便,先连接好数据库,直接传人查询的sql字符串即可,也可以指定每页显示的数据条数
    例如$pages = new Page('SELECT * FROM `zy_common_member`');
    或 $pages = new Page('SELECT * FROM `zy_common_member`', 10);
    */
    class Page{
    private $curPage;
    private $totalPages;//数据总共分多少页显示
    private $dispNum;//每页显示的数据条数
    private $queryStr;//查询的SQL语句
    private $limitStr;//查询语句后面的limit控制语句

    /*
    构造函数
    $queryStr 查询数据的SQL语句
    $dispNum 每页显示的数据条数
    */
    public function __construct($queryStr='',$dispNum=10){
    $result = mysql_query($queryStr);
    $totalNum = mysql_num_rows($result);
    $this->dispNum = $dispNum;
    $this->totalPages = ceil($totalNum / $dispNum);
    $this->queryStr = $queryStr;

    $temp = (isset($_GET["curPage"]) ? $_GET["curPage"] : 1);
    $this->setCurPage($temp);

    $this->showCurPage();
    $this->showFoot();
    }

    /*显示当前页的数据内容*/
    private function showCurPage(){
    $this->limitStr = ' LIMIT '.(($this->curPage - 1)* $this->dispNum).','.$this->dispNum;
    //echo $this->queryStr.$this->limitStr;
    $result = mysql_query($this->queryStr.$this->limitStr);

    if (!$result)
    {
    if ($this->totalPages > 0)
    {
    echo '查询出错'.'<br>';
    }
    else
    {
    echo '无数据'.'<br>';
    }
    return;
    }
    $cols = mysql_num_fields($result);

    echo '<table border="1">';
    echo '<tr>';
    for($i=0; $i<$cols; $i++)
    {
    echo '<th>';
    echo mysql_field_name($result, $i);
    echo '</th>';
    }
    echo '</tr>';

    while($row = mysql_fetch_assoc($result))
    {
    echo '<tr>';
    foreach($row as $key=>$value)
    {
    echo '<td>';
    echo $value;
    echo '</td>';
    }
    echo '</tr>';
    }

    echo '</table>';
    }

    private function setCurPage($curPage){
    if($curPage < 1)
    {
    $curPage = 1;
    }
    else if($curPage > $this->totalPages)
    {
    $curPage = $this->totalPages;
    }
    $this->curPage = $curPage;
    }

    /*
    显示分页页脚的信息
    如首页,上一页,下一页,尾页等信息
    */
    private function showFoot(){
    echo '<a href="?curPage=1">首页</a>';
    echo '<a href="?curPage='.($this->curPage - 1).'">上一页</a>';
    echo '<a href="?curPage='.($this->curPage + 1).'">下一页</a>';
    echo '<a href="?curPage='.$this->totalPages.'">尾页</a>';
    }

    }

    ?>

     

  • 相关阅读:
    如何创建多线程
    Oracle导入数据表
    Oracle如何创建数据库用户
    Oracle忘记密码,如何修改密码
    Oracle如何创建表空间
    leetcode 787. K 站中转内最便宜的航班 js题解
    JS实现平衡二叉树
    typescript的安装与配置
    二分查找JS实现
    JS作用域(一):一般变量声明
  • 原文地址:https://www.cnblogs.com/hssbsw/p/3411295.html
Copyright © 2011-2022 走看看