PHP 自制分页类

思路:

通过给页面url传递get参数,来控制每页的sql查询(mysql关键词:limit),实现分页查询

代码:

 1 class getpage{
 2
 3     public $pagenum;
 4     public $pagecontents;
 5     public $sql;
 6     public $url;
 7     public function __construct($a){
 8
 9         $this->pagecontents = $a;
10         $this->url = ‘http://‘.$_SERVER[‘HTTP_HOST‘].$_SERVER[‘REQUEST_URI‘];
11     }
12     //获取分页数
13     public function createpage($sql){
14
15         $this->sql = $sql;
16         $conn = mysql_connect(‘localhost‘,‘root‘,‘root‘);
17         if(!$conn){
18
19             die(mysql_error());
20         }
21         mysql_select_db(‘class‘,$conn)or die(mysql_error());
22         mysql_query("set names ‘utf8‘");
23         $handle = mysql_query($sql);
24         $row = array();
25         while($r = mysql_fetch_row($handle)){
26
27             $row[] = $r;
28         }
29         //假如除的结果为小数,则进1来保证分页数量
30         $pagenum = count($row)/$this->pagecontents;
31         $this->pagenum = ceil($pagenum);
32
33     }
34     //替换page参数
35     private function replacestr(){
36         if(isset($_GET[‘page‘])){
37             return str_replace("?page="[email protected]$_GET[‘page‘],"", $this->url);
38         }else{
39             @$_GET[‘page‘] = 0;
40         }
41     }
42     //页面分页显示
43     public function createstyle(){
44
45         for($i=0;$i<$this->pagenum;$i++){
46
47             echo "<button><a href=‘".$this->replacestr($this->url)."?page=".$i*$this->pagecontents."‘>".(1+$i)."</a></button>";
48         }
49     }
50     public function getdata(){
51
52         $where = " limit ".(@$_GET[‘page‘]).",".$this->pagecontents;
53         $this->sql .= $where;
54         $handle = mysql_query($this->sql);
55         $arr = array();
56         while($r = mysql_fetch_assoc($handle)){
57             $arr[] = $r;
58         }
59         return $arr;
60     }
61
62 }
时间: 2024-10-25 17:57:34

PHP 自制分页类的相关文章

PHP非常好用的分页类

分页类: <?php /* * ********************************************* * @类名: page * @参数: $myde_total - 总记录数 * $myde_size - 一页显示的记录数 * $myde_page - 当前页 * $myde_url - 获取当前的url * @功能: 分页实现 * @作者: 宋海阁 */ class Page { private $myde_total; //总记录数 private $myde_siz

php分页类

<?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $listRows; //每页显示行数 private $limit; //SQL语句使用limit从句,限制获取记录个数 private $uri; //自动获取url的请求地址 private $pageNum; //总页数 private $page; //当前页 private $config = arr

PHP简单分页类

<?php /* * ********************************************* * @类名: page * @参数: $myde_total - 总记录数 * $myde_size - 一页显示的记录数 * $myde_page - 当前页 * $myde_url - 获取当前的url * @功能: 分页实现 * @作者: 宋海阁 */ class page { private $myde_total; //总记录数 private $myde_size; //

thinkphp简洁、美观、靠谱的分页类

废话不多说先上图预览下:即本博客的分页: 这个分页类是在thinkphp框架内置的分页类的基础上修改而来: 原分页类的一些设计,在实际运用中感觉不是很方便: 1:只有一页内容时不显示分页: 2:原分页类在当前页是第一页和最后一页的时候,不显示第一页和最后一页的按钮: 3:分页数比较少时不显示首页和末页按钮: 4:包裹分页内容的父级div没有class: 针对以上问题逐一进行了修改成如下: 1:如果没有数据不显示分页,如果有一页及以上内容即显示分页: 2:默认就显示第一页和最后一页按钮,但是在当前

ASP经典分页类

================================================================= 'XDOWNPAGE ASP版本 '版本 1.00 'Code by zykj2000 'Email: [email protected] 'BBS: http://bbs.513soft.net '本程序可以免费使用.修改,希望我的程序能为您的工作带来方便 '但请保留以上请息 ' '程序特点 '本程序主要是对数据分页的部分进行了封装,而数据显示部份完全由用户自定义

thinkphp自带分页类

thinkphp自带分页使用案例: $Data = M('Data'); // 实例化Data数据对象  date 是你的表名     import('ORG.Util.Page');// 导入分页类     $count = $Data->where($map)->count();// 查询满足要求的总记录数 $map表示查询条件     $Page = new Page($count);// 实例化分页类 传入总记录数     $show = $Page->show();// 分页显

php中的实用分页类

<table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>地区代号</td> <td>地区名称</td> <td>父级代号</td> </tr> <?php include("LZY.class.php");

php 分页类

<?php/* * ********************************************* * @类名: page * @参数: $myde_total - 总记录数 * $myde_size - 一页显示的记录数 * $myde_page - 当前页 * $myde_url - 获取当前的url * @功能: 分页实现 * @作者: 宋海阁 */ class page{ private $myde_total; //总记录数 private $myde_size; //一页

分页类

<?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $listRows; //每页显示行数 private $limit; //SQL语句使用limit从句,限制获取记录个数 private $uri; //自动获取url的请求地址 private $pageNum; //总页数 private $page; //当前页 private $config = arr