php分页的实现方法有几种
本篇内容主要讲解“php分页的实现方法有几种”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php分页的实现方法有几种”吧!

创新互联公司是专业的华龙网站建设公司,华龙接单;提供成都做网站、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行华龙网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
1、通过“MySQL_query”等函数将sql查询进行分页。
2、使用ajax的方法实现分页。
3、通过“function viewpage(p){...}”脚本实现分页。
实例
_conn === false || !is_resource($this->_conn)) {
warningLog(__METHOD__ . ': query sql with no connection', true);
return false;
}
$this->_query_id = @mysql_query($query, $this->_conn);
if ($this->_query_id === false) {
$this->_errstr = @mysql_error();
$ret = false;
} else {
$this->_errstr = 'SUCCESS';
$ret = $this->_query_id;
}
}
$msg = ($ret === false) ? 'false' : strval($ret);
debugLog(__METHOD__.": [$msg] returned for sql query [$query]");
return $ret;
}
function __construct($sql,$page_size) {
$result = mysql_query($sql);
$datanum = mysql_num_rows($result);
$this->sql=$sql;
$this->datanum=$datanum;
$this->page_size=$page_size;
}
//当前页数
public function page_id() {
if($_SERVER['QUERY_STRING'] == ""){
return 1;
}elseif(substr_count($_SERVER['QUERY_STRING'],"page_id=") == 0){
return 1;
}else{
return intval(substr($_SERVER['QUERY_STRING'],8));
}
}
//剩余url值
public function url() {
if($_SERVER['QUERY_STRING'] == ""){
return "";
}elseif(substr_count($_SERVER['QUERY_STRING'],"page_id=") == 0){
return "&".$_SERVER['QUERY_STRING'];
}else{
return str_replace("page_id=".$this->page_id(),"",$_SERVER['QUERY_STRING']);
}
}
//总页数
public function page_num() {
if($this->datanum == 0){
return 1;
}else{
return ceil($this->datanum/$this->page_size);
}
}
//数据库查询的偏移量
public function start() {
return ($this->page_id()-1)*$this->page_size;
}
//数据输出
public function sqlquery() {
return $this->sql." limit ".$this->start().",".$this->page_size;
}
//获取当前文件名
private function php_self() {
return $_SERVER['PHP_SELF'];
}
//上一页
private function pre_page() {
if ($this->page_id() == 1) { //页数等于1
return "url().">上一页 ";
}elseif ($this->page_id() != 1) { //页数不等于1
return "上一页 ";
}
}
//显示分页
private function display_page() {
$display_page = "";
if($this->page_num() <= 10){ //小于10页
for ($i=1;$i<=$this->page_num();$i++) //循环显示出页面
$display_page .= "".$i." ";
return $display_page;
}elseif($this->page_num() > 10){ //大于10页
if($this->page_id() <= 6){
for ($i=1;$i<=10;$i++) //循环显示出页面
$display_page .= "".$i." ";
return $display_page;
}elseif(($this->page_id() > 6) && ($this->page_num()-$this->page_id() >= 4)){
for ($i=$this->page_id()-5;$i<=$this->page_id()+4;$i++) //循环显示出页面
$display_page .= "".$i." ";
return $display_page;
}elseif(($this->page_id() > 6) && ($this->page_num()-$this->page_id() < 4)){
for ($i=$this->page_num()-9;$i<=$this->page_num();$i++) //循环显示出页面
$display_page .= "".$i." ";
return $display_page;
}
}
}
//下一页
private function next_page() {
if ($this->page_id() < $this->page_num()) { //页数小于总页数
return "下一页 ";
}elseif ($this->page_id() == $this->page_num()) { //页数等于总页数
return "下一页 ";
}
}
// 设置分页信息
public function set_page_info() {
$page_info = "共".$this->datanum."条 ";
$page_info .= "url().">首页 ";
$page_info .= $this->pre_page();
$page_info .= $this->display_page();
$page_info .= $this->next_page();
$page_info .= "尾页 ";
$page_info .= "第".$this->page_id()."/".$this->page_num()."页";
return $page_info;
}
}
?>到此,相信大家对“php分页的实现方法有几种”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
文章名称:php分页的实现方法有几种
文章URL:http://www.jxjierui.cn/article/pigioo.html


咨询
建站咨询
