您当前的位置: 首页 > 网站编程 > PHP教程 > 用PHP来实现网页的翻页处理

用PHP来实现网页的翻页处理

作者:admin 来源:不详 发布时间: 2008-06-04 08:50 点击:
PHP实例源代码:PHP实现翻页处理的类 ?php classPage{ var$CountAll;//共有纪录数 var$CountPage;//每页显示记录数 var$Link;//显示完整的分页信息 var$ForPage;//上一页 var$NextPage;//下一页 var$FirstPage;//第一页 var$LastPage;//最后一页 var$CurrPage

用PHP来实现网页的翻页处理

    PHP实例源代码:PHP实现翻页处理的类
<?php 
class Page{ 
var $CountAll; //共有纪录数 
var $CountPage; //每页显示记录数 
var $Link; //显示 完整的分页信息 
var $ForPage; //上一页 
var $NextPage; //下一页 
var $FirstPage; //第一页 
var $LastPage; //最后一页 
var $CurrPage; //第几页 
var $PageNum; //共有多少页 
var $Parameter; //参数 
var $LimitNum; //不是统计全部记录,而是显示部分记录,例如共有100条记录,但是只统计显示前50条 
function Page($sql, $num=30){ 
//初始化,统计记录数 
$this->CountPage = $num; 
global $mysql; 
$sql = base64_decode($sql); 
$result = $mysql->Query($sql); 
if (0 != $mysql->AffectedRows()){ 
$row = $mysql->FetchArray($result); 
$this->CountAll = $row[0]; 

else{ 
$this->CountAll = 0; 

//print "共有 $this->CountAll <br>"; 

function ListPage($sql, $page=0,$sql_all,$other){ 
//查询,定义变量,获取数据 
global $mysql; 
//print "sql sql<br>"; 
if (isset($this->LimitNum) && $this->CountAll > $this->LimitNum){ 
$this->CountAll = $this->LimitNum; 
}//更新总浏览记录数 
$sql_src = $sql; 
//if ($page > 0){ 
$sql = base64_decode($sql); 
$sql_all = base64_decode($sql_all); 
$sql_src = $sql; 
//} 
//echo $sql; 
if (($this->CountAll % $this->CountPage) == 0)//统计共有多少页 
$pagecount = (integer)($this->CountAll/$this->CountPage); 
else 
$pagecount = (integer)($this->CountAll/$this->CountPage)+1; 
$this->ageNum = $pagecount; 
if ($page > $this->ageNum)//如果页码超过页码总数则设为最大页码 
$page = $this->ageNum; 
if ($page <= 0)//如果页码小于等于零则将页码设置为1 
$page = 1; 
if ($this->CountAll == 0) 

$this->CurrPage = 0; 
}else{ 
$this->CurrPage = $page; 

$first_start = ($page-1)*$this->CountPage; 
$sql = $sql." limit ".$first_start.", ".$this->CountPage; 
//print "2sql<br>"; 
$result = $mysql->Query($sql); 
if (0 != $mysql->AffectedRows()){ 
$i = 0; 
while($row = $mysql->FetchArray($result)){ 
$array[$i] = $row; 
//print "name:".$array[$i][Name]."<br>"; 
$i++; 


$sql = base64_encode($sql_src); 
$sql_all = base64_encode($sql_all); 
if ($pagecount >1){ 
if($page == 1){ 
$nextpage = $page+1; 
$forpage = 1; 
$this->Link = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button><button onClick="javascript:location.href=’?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>"; 
$this->NextPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button>"; 
$this->LastPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>"; 

else if(($page > 1)&&($page < $pagecount)) { 
$forpage = $page-1; 
$nextpage = $page+1; 
$this->Link = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button><button onClick="javascript:location.href=’?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button><button onClick="javascript:location.href=’?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button><button onClick="javascript:location.href=’?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>"; 
$this->ForPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>"; 
$this->NextPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button>"; 
$this->FirstPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button>"; 
$this->LastPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>"; 

else if ($page = $pagecount){ 
$forpage = $page-1; 
$nextpage = 1; 
$this->Link = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button><button onClick="javascript:location.href=’?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>"; 
$this->FirstPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button>"; 
$this->ForPage = "<button onClick="javascript:location.href=’?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."’" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>"; 


else{ 
$this->Link = ’ ’; 

return $array;//$array; 


/*************** 
使用例子 
include("class.config.php"); 
include("class.mysql.php"); 
include("class.page.php"); 
global $mysql; 
$config = new Config; 
$mysql = new TDatabase($config); 
$query_all = "select count(*) from user"; 
$page_object = new Page($query_all,20); 
//new Page(’统计记录个数语句’,每页记录个数) 
if(empty($query_page)) 
$query_sql = "select * from user"; 
//注意这里的变量名必须为 $query_sql $query_page ,因为下一页的连接参数默认为 query_sql query_page 
$list = $page_object->ListPage($query_sql,$query_page); 
//ListPage(’没有limit的前一部分,系统自动根据补齐’,察看的页数) 
$page_object->Parameter = ’&action=view’; 
//这是传送的Url 所带的其它参数,如果有就修改变量 Parameter ,系统自动将她补在后面 
//显示数据 
for ($i=0;$i< $page_object->CountPage;$i++) 
print $list[$i][ID]."->".$list[$i][UserName]."<br>"; 
//返回的数据为二维哈西(关联)数组,一维为纪录的标识ID号,二维为哈西(关联)数组,取值标识建议采取用数据库中字段名的方法,例如list[0][UserName]。 
//显示其他相关数据 
echo $page_object->CountAll;//纪录总数 
echo $page_object->CountPage;//每页显示数据个数 
echo $page_object->Link;//显示完整的分页信息 
echo $page_object->FirstPage;//第一页 
echo $page_object->NextPage;//下一页 
echo $page_object->ForPage;//上一页 
echo $page_object->LastPage;//最后一页 
echo $page_object->CurrPage;//第几页 
echo $page_object->PageNum;//共有多少页 
$mysql->DatabaseClose(); 
****************/ 
分享到:
本文"用PHP来实现网页的翻页处理"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4