Home  >  Article  >  Backend Development  >  PHP paging navigation mysql+php paging class (tested)

PHP paging navigation mysql+php paging class (tested)

WBOY
WBOYOriginal
2016-07-29 08:37:471055browse

复制代码 代码如下:


/*
mysql_pager.class.php
三个参数。 mysql_query()的结果, url变量page, 您要的每页记录数
例子在这个文件底部
淡水河边整理测试
*/
class mysql_pager {
// define properties
var $page;
var $result;
var $results_per_page = 3;
var $total_pages;
/*
Define the methods
下面是构造函数,和类同名(>php4)     
   需要查询的结果句柄,当前页码,每页记录数     
   like:  $f->mysql_pager($result, 1, 15);     
*/      
function mysql_pager( $result, $current_page, $results_per_page ) {      
    if(!$result){      
        echo "

数据库未运行,结果集错误
\n";        
        return;      
        }      
   $this->result = $result;      
   if(!$current_page || $current_page < 0)
$this->page = 1;      
   else $this->page = $current_page;      
   if(!emptyempty($results_per_page))        
      $this->results_per_page = $results_per_page;      
   $numrows = @mysql_num_rows($this->result);        
   if(!$numrows) {      
      echo "
查询结果为空.
n";      
      return;      
      }      
   $this->total_pages = ceil($numrows / $this->results_per_page);        
}      
/*       
  下面是打印内容的函数,可以不用,也可以根据自己Needs expansion
Here just prints out the id
*/
function print_paged_results() { echo "n";
$start = ($ this->page - 1) * $ this->results_per_page;
mysql_data_seek($this->result, $start);
$x = 0;
for($i = 1; $i <= $this->resul ts_per_page && $row = @ mysql_fetch_array($this->result); $i++) {                                                                                                                                                
   echo "". $row["id"] . ""; "}
/*
The following is the function to print page numbers and links
Called where we need to display page numbers
*/
function print_navigation() {
global $PHP_SELF;
echo "
";
for( $i = 1; $i <= $this->total_pages; $i++) { #loop to print << 1 2 3... $total_pages >>
if($i == 1 && $this->page > 1) #Prints the << first to goto the previous page (not on page 1)                                                                                                                                                                                                ;page - 1)."" /a>";                                                                                                                                                                                 ff3333"> $i ";

if($i != $this->page) #Other links that aren"t this page go here echo " if ($ i == $ This- & GT; Total_pages && $ This-GT; Page! = $ this-& gt; Total_pages) ; & gt; (not on last page)                                                                                                                                                                              worse gt;n" ; ; sult= @mysql_query("Select * FROM table");
$p = new mysql_pager( $result, $page=$_GET["page"], 10 );
$p->print_navigation();
$p->print_paged_results();
$p->print_navigation();​​
*/                                                          
The above introduces the PHP paging navigation mysql+php paging class (tested), including the content of PHP paging navigation. I hope it will be helpful to friends who are interested in PHP tutorials.