帝国cms分页信息展示插件如何写

由于插件开发属于帝国cms二次开发范畴,所以需要手动引入帝国cms数据库和相应的模块,这样,我们就可以调用这些模块来实现自己的需要的功能,代码如下:




<?php
require(&#39;../../class/connect.php&#39;); //引

[时间:10-02]    [浏览:]    [放入收藏夹]    [查看详情]
由于插件开发属于帝国cms二次开发范畴,所以需要手动引入帝国cms数据库和相应的模块,这样,我们就可以调用这些模块来实现自己的需要的功能,代码如下:
 
<?php
require('../../class/connect.php'); //引入数据库配置文件和公共函数文件
require('../../class/db_sql.php'); //引入数据库操作文件
require('../../data/dbcache/class.php'); //引入栏目缓存文件
require '../'.LoadLang("pub/fun.php"); //引入分页语言包文件
$link=db_connect(); //连接MYSQL
$empire=new mysqlquery(); //声明数据库操作类
$editor=1; //声明目录层次

//-------- 分页参数 --------
$page=(int)$_GET['page'];
$start=0;
$line=10; //每页显示记录数
$page_line=8; //每页显示分页链接数
$offset=$page*$line; //总偏移量

//-------- 查询SQL --------
//取得信息总数
$totalquery="select count(*) as total from {$dbtbpre}ecms_info where checked=1";
$num=$empire->gettotal($totalquery);
//select查询SQL
$query="select * from {$dbtbpre}ecms_info where checked=1";
$query.=" order by newstime desc limit $offset,$line";
$sql=$empire->query($query);
$listpage=page1($num,$line,$page_line,$start,$page,$search);//取得分页导航
require('template/index.temp.php'); //导入模板文件
db_close(); //关闭MYSQL链接
$empire=null; //注消操作类变量
?>
 

代码说明:
上面代码主要是要注意“ limit $offset,$line”,关键是这里,其中的offset表示游标移动到当前页的数据上,比如如果取$page=2,则$offset=$page*$line就是2*8等于16,表示从16条这个数据开始取,然后取$line条数据,取出后显示即可。

而“$listpage=page1($num,$line,$page_line,$start,$page,$search)”则是调用帝国cms中的page1方法来制作分页导航,也就是我们见到的底部页码列表
那这个$listpage在哪使用呢?当然在自定义插件模板中使用了,上面我们代码中引入了“template/index.temp.php”,只需要在这个文件里需要展示的地方直接写标签即可展示分页列表,代码和效果如下:
<div class="pageye">
  <?=$listpage?>
</div>
帝国cms分页插件显示效果
至此,分页代码获取信息插件书写完毕。


PS:本文来自万书涛的个人博客,感谢分享。


标签: