php实现的仿阿里巴巴实现同类产品翻页
PHP 实现 阿里巴巴 翻页
2023-06-13 09:14:15 时间
如果左边的记录条数小于$space(页码区段)的值,页码$start从1开始向右增值。如果左则的记录条数多于$left(左右各显示页数)的值,$start将从左边记录数减去$left值开始记数。
复制代码代码如下:
<?php
/**实现同类产品翻页**/
classpager
{
protected$space;
protected$left;
protected$DB;
protected$pageName;
publicfunctionsetSpace($num){
$this->space=$num;
$this->left=ceil(($num-1)/2);
}
publicfunctionsetDB(&$db){
$this->DB=$db;
}
publicfunctionsetPageName($pageName){
$this->pageName=$pageName;
}
publicfunctiongetPages($catid,$exptime){
$fields=array("`id`,`title`");
$left=array(">"=>array("exptime"=>$exptime),"memberid"=>gs(_MEM_PREFIX_."memberid"),"catid"=>$catid);
$right=array("<"=>array("exptime"=>$exptime),"memberid"=>gs(_MEM_PREFIX_."memberid"),"catid"=>$catid);
$leftCount=$this->DB->getCount($left);
if($leftCount<=$this->left){
$star=1;
$leftLimit="LIMIT".$leftCount;
$rightLimit="LIMIT".($this->space-$leftCount);
}
else{
$start=$leftCount-$this->left;
$leftLimit="LIMIT".$this->left;
$rightLimit=$leftLimit;
}
$list1=$this->DB->findAll($left,array("exptime"=>"ASC"),$leftLimit,$fields);
$list2=$this->DB->findAll($right,array("exptime"=>"DESC"),$rightLimit,$fields);
/**上一页链接**/
$c=count($list1);
if($c>1){
$url=$this->pageName."-".$list1[$c]["id"].".html";
$pages="<ahref=\"{$url}\">上一页</a><ol>";
}elseif($c==1){
$url=$this->pageName."-".$list1[0]["id"].".html";
$pages="<ahref=\"{$url}\">上一页</a><ol>";
}else{
$pages="";
}
/**当前页的左边内容**/
foreach($list1as$item){
$url=$this->pageName."-".$item["id"].".html";
$pages.="<li><ahref=\"{$url}\">{$start}</a></li>";
$start++;
}
$pages.="<li><b>{$leftCount}</b></li>";
$start++;
/**当前页面右边的内容**/
foreach($list1as$item){
$url=$this->pageName."-".$item["id"].".html";
$pages.="<li><ahref=\"{$url}\">{$start}</a></li>";
$start++;
}
/**下一页的链接**/
$c=count($list2);
if($c>0){
$url=$this->pageName."-".$list2[0]["id"].".html";
$pages.="<ahref=\"{$url}\">下一页</a><ol>";
}else{
$pages.="";
}
return$pages;
}
};
?>
相关文章
- php实现页面跳转的方式_html跳转代码
- MySQL 锁表与 PHP 数据交互实现(mysql锁表php)
- 交互PHP与MySQL联动:实现数据交互(php与mysql数据库)
- 数据库远程连接MySQL数据库:利用PHP实现简易方法(php远程mysql)
- 连接MySQL数据库:使用PHP实现(使用php连接mysql)
- 函数Linux下禁用PHP函数的步骤(linux关闭php)
- PHP实现MSSQL数据库高效操作(php操作mssql)
- PHP实现MySQL表格删除(php删除mysql表)
- PHP与MySQL结合使用实现关联查询的方法(php关联mysql查询)
- PHP实现Redis服务器连接(phpredis连接)
- 安装Linux实现一键安装PHP环境(linux一键php)
- Redis在PHP环境下的安装与下载(redis下载 php)
- PHP与MSSQL的距离:无法实现的接触(php里面没有mssql)
- PHP如何开启MSSQL支持?(php怎么开启mssql)
- PHP连接MSSQL实现数据交互(mssql类php)
- PHP和MSSQL实现完美兼容:简单实用又稳定(php mssql兼容性)
- MSSQL 数据库在PHP中的登录实现(mssql登录php)
- 检查PHP Redis环境实现快速可靠性服务(检查php redis)
- PHP实现高效的Redis连接(redis连接 php)
- 利用Memcached在php下实现session机制替换PHP的原生session支持
- PHP数组操作汇总php数组的使用技巧
- php教程插件机制在PHP中实现方案
- 基于php实现长连接的方法与注意事项的问题
- 使用jQuery和PHP实现类似360功能开关效果
- PHP结合JQueryJcrop实现图片裁切实例详解
- php实现读取超大文件的方法