limit 偏移量,长度;
limit 0,7; 第一页
limit 7,7; 第二页
limit 14,7; 第三页
每页信息条数:7
信息总条数:select count(*) from table
信息总页数:ceil向上取整(总条数/每页条数)
1、分页类具体使用
个记录, prev => 【上一页】, next => 【下一页】, first => 【首 页】, last => 【尾 页】); private $listnum = 8; /* * $total 当前信息总条数 * $listrows 每页显示的条数 * $pa 下面的page http://网址/index.php?page=5 */ public function __construct($total, $listrows = 10, $pa = ) { $this->total = $total; $this->listrows = $listrows; $this->uri = $this->geturi($pa); $this->page = !empty($_get[page]) ? $_get[page] : 1;//不传入page,则默认显示首页 $this->pagenum = ceil($this->total / $this->listrows); $this->limit = $this->setlimit(); } //设置每页显示的条数 private function setlimit() { return limit . ($this->page - 1) * $this->listrows . , {$this->listrows}; } //获得url地址 private function geturi($pa) { $url = $_server[request_uri] . (strpos($_server[request_uri], '?') ? '' : ?) . $pa; $parse = parse_url($url); if (isset($parse[query])) { parse_str($parse['query'], $params); unset($params[page]); $url = $parse['path'] . '?' . http_build_query($params); } return $url; } //魔术方法, public function __get($args) { if ($args == limit) return $this->limit; else return null; } //页面开始的条数 private function start() { if ($this->total == 0) return 0; else return ($this->page - 1) * $this->listrows + 1; } //页面结束的条数 private function end() { return min($this->page * $this->listrows, $this->total); } /*设置首页*/ private function first() { $html = ; if ($this->page == 1) $html.=' '.$this->config[first].' '; else $html.= uri}&page=1\)'>{$this->config[first]} ; //$html.= uri}&page=1'>{$this->config[first]} ; return $html; } /*设置上一页*/ private function prev() { $html = ; if ($this->page == 1) $html.=' '.$this->config[prev].' '; else $html.= uri}&page= . ($this->page - 1) . \)'>{$this->config[prev]} ; //$html.= uri}&page=.($this->page-1).'>{$this->config[prev]} ; return $html; } //页码列表【首页】【2】【3】…………【尾页】 private function pagelist() { $linkpage = ; $inum = floor($this->listnum / 2); for ($i = $inum; $i >= 1; $i--) { $page = $this->page - $i; if ($page {$page} ; } $linkpage.= {$this->page} ; for ($i = 1; $i page + $i; if ($page pagenum) $linkpage.= uri}&page={$page}\)'>{$page} ; else break; } return $linkpage; } /*设置下一页*/ private function next() { $html = ; if ($this->page == $this->pagenum) $html.=' '.$this->config[next].' '; else $html.= uri}&page= . ($this->page + 1) . \)'>{$this->config[next]} ; //$html.= uri}&page=.($this->page + 1).'>{$this->config[next]} ; return $html; } /*设置尾页*/ private function last() { $html = ; if ($this->page == $this->pagenum) $html.=' '.$this->config[last].' '; else $html.= uri}&page= . ($this->pagenum) . \)'>{$this->config[last]} ; //$html.= uri}&page=.(this->pagenum).'>{$this->config[last]} ; return $html; } /*设置页面跳转*/ private function gopage() { return ' ' . $this->pagenum . ')?' . $this->pagenum . ':this.value;showpage(\'' . $this->uri . '&page=\'+page+\'\')} value=' . $this->page . ' style=width:25px> ' . $this->pagenum . ')?' . $this->pagenum . ':this.previoussibling.value;showpage(\'' . $this->uri . '&page=\'+page+\'\')> '; } //页面列表配置选项 function fpage($display = array(0, 1, 2, 3, 4, 5, 6, 7, 8)) { $html[0] = 共有{$this->total}{$this->config[header]} ; $html[1] = 每页显示 . ($this->end() - $this->start() + 1) . 条,本页{$this->start()}-{$this->end()}条 ; $html[2] = {$this->page}/{$this->pagenum}页 ; $html[3] = $this->first(); $html[4] = $this->prev(); $html[5] = $this->pagelist(); $html[6] = $this->next(); $html[7] = $this->last(); $html[8] = $this->gopage(); $fpage = ''; foreach ($display as $index) { $fpage.=$html[$index]; } return $fpage; }}
2 数据显示
<?php//链接数据库//获得具体信息//分页显示header(content-type:text/html;charset=utf-8);$link = mysql_connect('localhost','root','111111');mysql_select_db('shop', $link);mysql_query(set names utf8);$css =
;}echo .$pagelist.
;echo
;
3 ajax无刷新分页实现
open(‘get','http://网址/index.php?page=2')
新建网页 ajax无刷新分页效果
希望本文所述对大家的php程序设计有所帮助。
http://www.bkjia.com/phpjc/1073128.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/1073128.htmltecharticlephp+ajax实现无刷新分页,phpajax刷新分页 本文实例讲述了php+ajax实现无刷新分页实现方法。分享给大家供大家参考。具体如下: limit 偏移量,...