PHP 自制分页类
2024-09-04 09:44:17
思路:
通过给页面url传递get参数,来控制每页的sql查询(mysql关键词:limit),实现分页查询
代码:
class getpage{ public $pagenum;
public $pagecontents;
public $sql;
public $url;
public function __construct($a){ $this->pagecontents = $a;
$this->url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
}
//获取分页数
public function createpage($sql){ $this->sql = $sql;
$conn = mysql_connect('localhost','root','root');
if(!$conn){ die(mysql_error());
}
mysql_select_db('class',$conn)or die(mysql_error());
mysql_query("set names 'utf8'");
$handle = mysql_query($sql);
$row = array();
while($r = mysql_fetch_row($handle)){ $row[] = $r;
}
//假如除的结果为小数,则进1来保证分页数量
$pagenum = count($row)/$this->pagecontents;
$this->pagenum = ceil($pagenum); }
//替换page参数
private function replacestr(){
if(isset($_GET['page'])){
return str_replace("?page=".@$_GET['page'],"", $this->url);
}else{
@$_GET['page'] = 0;
}
}
//页面分页显示
public function createstyle(){ for($i=0;$i<$this->pagenum;$i++){ echo "<button><a href='".$this->replacestr($this->url)."?page=".$i*$this->pagecontents."'>".(1+$i)."</a></button>";
}
}
public function getdata(){ $where = " limit ".(@$_GET['page']).",".$this->pagecontents;
$this->sql .= $where;
$handle = mysql_query($this->sql);
$arr = array();
while($r = mysql_fetch_assoc($handle)){
$arr[] = $r;
}
return $arr;
} }
最新文章
- webpy分页类 + 上传类
- UVA 10090 - Marbles 拓展欧几里得
- Chapter 3 Discovering Classes and Object
- linux下配置Apache基于加密的认证访问
- [Hadoop源码解读](六)MapReduce篇之MapTask类
- WordPress &#39;is_serialized()&#39;远程任意代码执行漏洞(CVE-2013-4338)
- 如何让MFC程序关闭按钮失效,也无法右击任务栏关闭窗口来关闭?
- [BZOJ 3564] [SHOI2014] 信号增幅仪 【最小圆覆盖】
- 正则表达式中/g的含义
- javascript 中 nodeValue 、value 、text 的区别
- Java并发编程总结4——ConcurrentHashMap在jdk1.8中的改进(转)
- JTable用法-实例
- Scrum到底是个神马玩意儿
- 程序员50题(JS版本)(四)
- browser_action&#39; is only allowed for extensions but this is a legacy packaged app
- Python 汉诺塔
- python-建造者模式
- 20155207 《网络对抗》 Exp9 Web安全基础
- my.cnf配置文件参数解释
- 用OpenSSL把二进制的Cer证书转换程Base64格式的PEM格式的证书
热门文章
- 最近的阅读list
- Java日志框架介绍
- zeppelin ERROR总结
- 浅谈PHP中的数组和JS中的数组
- Liunx 配置sshd服务
- nginx虚拟主机搭建
- 【Effective C++ 读书笔记】条款04:确定对象使用前已先被初始化
- TouTiao开源项目 分析笔记18 视频详情页面
- TouTiao开源项目 分析笔记12 从总体到局部 构建视频主页面
- [bzoj3371][poj2009][Usaco2004 Mar]Moo University - Emergency Pizza Order 定制比萨饼