復(fù)制代碼 代碼如下:
/*?????
mysql_pager.class.php?????
三個(gè)參數(shù)。?mysql_query()的結(jié)果,?url變量page,?您要的每頁記錄數(shù)?????
例子在這個(gè)文件底部?????
淡水河邊整理測(cè)試?????
*/??????
class?mysql_pager?{??????
??//?define?properties??????
??var?$page;??????
??var?$result;??????
??var?$results_per_page?=?3;??????
??var?$total_pages;????????
/*???????
Define?the?methods?????
??下面是構(gòu)造函數(shù),和類同名(>php4)?????
???需要查詢的結(jié)果句柄,當(dāng)前頁碼,每頁記錄數(shù)?????
???like:??$f->mysql_pager($result,?1,?15);?????
*/??????
function?mysql_pager(?$result,?$current_page,?$results_per_page?)?{??????
????if(!$result){??????
????????echo?"
數(shù)據(jù)庫未運(yùn)行,結(jié)果集錯(cuò)誤
\n";????????
????????return;??????
????????}??????
???$this->result?=?$result;??????
???if(!$current_page?||?$current_page?????????$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?"
查詢結(jié)果為空.
\n";??????
??????return;??????
??????}??????
???$this->total_pages?=?ceil($numrows?/?$this->results_per_page);????????
}??????
/*???????
??下面是打印內(nèi)容的函數(shù),可以不用,也可以根據(jù)自己的需要擴(kuò)展?????
??這里只是打印出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?results_per_page?&&?$row?=?@mysql_fetch_array($this->result);?$i++)?{??????
????????if($x++?&?1)?$bgcolor?=?"#F2F2FF";??????
????????else?$bgcolor?=?"#EEEEEE";??????
????????echo?"".?$row["id"]?.?" |
";????????????
????????//?編輯這部分輸出任何您想要的HTML??????
????????}??????
???????echo?"
\n";??????
}??????
/*???????
??下面是打印頁碼和鏈接的函數(shù)?????
??在我們需要顯示頁碼的地方調(diào)用?????
*/??????
function?print_navigation()?{??????
????global?$PHP_SELF;??????
????echo?"
\n";????????
??}??????
}??????
/*?????
???mysql_connect($server,?$uname,?$pass?);?????
???mysql_select_db("$db");?????
???$result=?@mysql_query("Select?*?FROM?table");?????
???$p?=?new?mysql_pager(?$result,?$page=$_GET["page"],?10?);?????
???$p->print_navigation();?????
???$p->print_paged_results();?????
???$p->print_navigation();?????
*/??????
?>?