mysql+php分页类(已测)_php教程-查字典教程网
mysql+php分页类(已测)
mysql+php分页类(已测)
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:

复制代码 代码如下:

<?php

/*

mysql_pager.class.php

三个参数。mysql_query()的结果,url变量page,您要的每页记录数

例子在这个文件底部

淡水河边整理测试

*/

classmysql_pager{

//defineproperties

var$page;

var$result;

var$results_per_page=3;

var$total_pages;

/*

Definethemethods

下面是构造函数,和类同名(>php4)

需要查询的结果句柄,当前页码,每页记录数

like:$f->mysql_pager($result,1,15);

*/

functionmysql_pager($result,$current_page,$results_per_page){

if(!$result){

echo"<divalign=center>数据库未运行,结果集错误</div>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"<divalign=center>查询结果为空.</div>n";

return;

}

$this->total_pages=ceil($numrows/$this->results_per_page);

}

/*

下面是打印内容的函数,可以不用,也可以根据自己的需要扩展

这里只是打印出id

*/

functionprint_paged_results(){

echo"<tableborder=0align=center>n";

$start=($this->page-1)*$this->results_per_page;

mysql_data_seek($this->result,$start);

$x=0;

for($i=1;$i<=$this->results_per_page&&$row=@mysql_fetch_array($this->result);$i++){

if($x++&1)$bgcolor="#F2F2FF";

else$bgcolor="#EEEEEE";

echo"<trbgcolor=$bgcolor><td>".$row["id"]."</td></tr>";

//编辑这部分输出任何您想要的HTML

}

echo"</table>n";

}

/*

下面是打印页码和链接的函数

在我们需要显示页码的地方调用

*/

functionprint_navigation(){

global$PHP_SELF;

echo"<divalign=center>";

for($i=1;$i<=$this->total_pages;$i++){#looptoprint<<123...$total_pages>>

if($i==1&&$this->page>1)#Printsthe<<firsttogotothepreviouspage(notonpage1)

echo"<ahref="$PHP_SELF?page=".($this->page-1).""onMouseOver="status="PreviousPage";returntrue;"onMouseOut="status="";returntrue;">?</a>";

if($i==$this->page)#Doesn"tprintalinkitself,justprintspagenumber

echo"<fontcolor="#ff3333">$i</font>";

if($i!=$this->page)#Otherlinksthataren"tthispagegohere

echo"<ahref="$PHP_SELF?page=$i"onMouseOver="status="GotoPage$i";returntrue;"onMouseOut="status="";returntrue;">$i</a>";

if($i==$this->total_pages&&$this->page!=$this->total_pages)#Linkfornextpage>>(notonlastpage)

echo"<ahref="$PHP_SELF?page=".($this->page+1).""onMouseOver="status="GototheNextPage";returntrue;"onMouseOut="status="";returntrue;">?</a>";

}

echo"</div>n";

}

}

/*

mysql_connect($server,$uname,$pass);

mysql_select_db("$db");

$result=@mysql_query("Select*FROMtable");

$p=newmysql_pager($result,$page=$_GET["page"],10);

$p->print_navigation();

$p->print_paged_results();

$p->print_navigation();

*/

?>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类