php基本分页
代码如下 | 复制代码 |
// database connection info // find out how many rows are in the table // number of rows to show per page // get the current page or set a default // if current page is greater than total pages... // the offset of the list, based on current page // get the info from the db // while there are rows to be fetched... /****** build the pagination links ******/ // if not on page 1, don't show back links // loop to show links to range of pages around current page // if not on last page, show forward and last page links |
先看一个常用的php分页类
代码如下 | 复制代码 |
/* $tbl_name=""; //your table name "; n"; //previous button if ($page > 1) $pagination.= "� previous"; else $pagination.= "� previous"; //pages if ($lastpage < 7 + ($adjacents * 2)) //not enough pages to bother breaking it up { for ($counter = 1; $counter <= $lastpage; $counter++) { if ($counter == $page) $pagination.= "$counter"; else $pagination.= "$counter"; } } elseif($lastpage > 5 + ($adjacents * 2)) //enough pages to hide some { //close to beginning; only hide later pages if($page < 1 + ($adjacents * 2)) { for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++) { if ($counter == $page) $pagination.= "$counter"; else $pagination.= "$counter"; } $pagination.= "..."; $pagination.= "$lpm1"; $pagination.= "$lastpage"; } //in middle; hide some front and some back elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2)) { $pagination.= "1"; $pagination.= "2"; $pagination.= "..."; for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++) { if ($counter == $page) $pagination.= "$counter"; else $pagination.= "$counter"; } $pagination.= "..."; $pagination.= "$lpm1"; $pagination.= "$lastpage"; } //close to end; only hide early pages else { $pagination.= "1"; $pagination.= "2"; $pagination.= "..."; for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++) { if ($counter == $page) $pagination.= "$counter"; else $pagination.= "$counter"; } } } //next button if ($page < $counter - 1) $pagination.= "next �"; else $pagination.= "next �"; $pagination.= " } ?>
while($row = mysql_fetch_array($result)) =$pagination?> |
实例
代码如下 | 复制代码 |
class PageView{ $this->totalNum = $count;//总记录数 $this->hasNextPage = $this->pageNo >= $this->pageCount ?false:true; }else if($this->pageNo > $this->pageCount - 4){ /*** "; if(!empty($pageList)){ if($this->pageCount >1){ if($this->hasPrePage){ $pageString = $pageString ."jsFunction . "(" . ($this->pageNo-1) . ")">上一页"; } foreach ($pageList as $k=>$p){ if($this->pageNo == $p){ $pageString = $pageString ."" . $this->pageNo . ""; continue; } if($p == -1){ $pageString = $pageString ."..."; continue; } $pageString = $pageString ."jsFunction . "(" . $p . ")">" . $p . ""; } if($this->hasNextPage){ $pageString = $pageString ."jsFunction . "(" . ($this->pageNo+1) . ")">下一页"; } } } $pageString = $pageString .(" return $pageString; } } ?> |
css代码
代码如下 | 复制代码 |
在php页面中的调用方法
代码如下 | 复制代码 |
$pageNo = $_GET['pageNo']; |