PHP ADODB分页类

PHP ADODB分页类——封装ADODB分页操作,ADODB分页类对ADODB中的方法进行封装,完成数据库中数据的分页查询和输出操作。

PHP ADODB分页类 语法

class PageDB{
   /*
     * @ 方法说明:
     *  数据分页处理,并以数组形式返回分页信息*
     * @ 参数说明:
     *  sql:所要执行的SQL语句
     *connID:数据库连接ID
     *  pageSize:每页显示数据的条数
     *page:当前显示的页数
    */
   function pageData (sql,connID, pageSize,page){
      arrayPageInfo = array();                               //定义空数组nowPage = page;rs = connID->PageExecute(sql, pageSize,nowPage);  //执行分页查询
      arrayData =rs->GetRows();    //获取查询结果
      if (count(arrayData) == 0 ||rs == false) {           //判断查询结果是否为空
        return false;
      } else {
        arrayPageInfo['data'] =arrayData;                 //每页的数据
        rsAll =connID->Execute(sql);   //执行SQL语句countRs = count(rsAll->GetRows());                 //统计结果集countPage = ceil(countRs /pageSize);             //计算总的页码
        arrayPageInfo['pageSize'] =pageSize;              //每页显示记录的条数
        arrayPageInfo['countRs'] =countRs;                //总记录数
        arrayPageInfo['page'] =nowPage;                   //当前页
        arrayPageInfo['countPage'] =countPage;            //总页数
        arrayPageInfo['first'] = 1;                         //第一页的页码
        if (page > 1) {
          arrayPageInfo['previous'] =rs->AbsolutePage() - 1;
                                                             //前一页的页码
        } else {
          arrayPageInfo['previous'] = 1;
        }
         if (page < countPage) {arrayPageInfo['next'] = rs->AbsolutePage() + 1; //后一页的页码
        } else {arrayPageInfo['next'] = countPage;
        }arrayPageInfo['last'] = countPage;              //最后一页的页码
      }
      returnarrayPageInfo;
   }
}

PHP ADODB分页类 示例

应用ADODB分页类

对db_database02数据库中tb_bigtype数据表中的数据进行分页输出。在index.php文件中,载入类的实例化文件,通过分页类的$pageDB对象调用pageData()方法,完成数据表中数据的分页查询操作,并输出查询结果。其关键代码如下:

<?php
include("conn/config.inc.php");                         //载入类的实例化文件
if (! isset(_GET['page']) ||_GET['page'] == '') {
   page = '1';
} else {page = _GET['page'];
}sql = "select * from tb_bigtype";
bookinfos =pageDB->pageData(sql,conn, 10, page);
for(i = 0; ibookinfos['data'] ); i ++) { //通过for循环输出数据库中的数据
?>
  <tr>
   <td align="center" bgcolor="#FFFFFF"><?php echobookinfos['data'][i] ['id']; ?></td>
   <td align="center" bgcolor="#FFFFFF"><?php echobookinfos['data'][i]
   ['typename']; ?></td>
   <td align="center" bgcolor="#FFFFFF"><?php echobookinfos['data'][i]
   ['addtime']; ?></td>
  </tr>
<?php
}
?>
 <tr>
   <td colspan="3" align="center" bgcolor="#FFFFFF">该类图书共 <?php echobookinfos['countRs'];?> 本  每页显示 <?php echo bookinfos
   ['pageSize'];?> 本  第 <?php echobookinfos['page']; ?> 
   页/共 <?php echo bookinfos['countPage'];?> 页    
         <a href="index.php?page=1" class="a1">首页</a> 
        <a href="index.php?page=<?php echopage-1;?>" class="a1">上一页</a> 
        <a href="index.php?page=<?php echo page+1;?>" class="a1">下一页</a> 
        <a href="index.php?page=<?php echobookinfos['countPage'];?>" class="a1">
        尾页</a>
     </td>
  </tr>

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程