帝国cms系统中,栏目列表页中,下边的列表内容模板里,如何判断最后一条记录呢?
$no变量,记录了当前记录总序号,只要用这个和总记录数比较,就可以判断了。
在页面模板内容中,增加
此处隐藏412个字。
登录可见就把当前栏目的信息总数获得,保存在post变量jhcnum中。否则,没有办法传递给下边的,列表内容模板 使用。
在列表内容模板中,启用程序代码后,这样判断就可以了: $lastone=$_POST['jhcnum']==$no?"last one":"not last";
另外的思路是,不利用$no变量,而是获得最后一条的id,通过id比较来完成。代码如下:
上集代码:
<?php
$classid=$navclassid;
$tbname=$class_r[$classid][tbname];
$reorder=$class_r[$classid][reorder];
$reorder=str_ireplace(" desc","[!--d--]",$reorder);
$reorder=str_ireplace(" asc","[!--a--]",$reorder);
$reorder=str_replace("[!--a--]"," desc",$reorder);
$reorder=str_replace("[!--d--]"," asc",$reorder);
$myid= sys_ReturnMoreClass($classid,1);
$_POST['jhcid']= $empire->gettotal("select id as total from {$dbtbpre}ecms_{$tbname} where $myid[1] order by $reorder limit 1");
?>
下集代码:
$lastone=$_POST['jhcid']==$r[id]?"last one":"";
后记:
1)列表模板的下集中,$no变量是当前记录的总序号,标签名称则是[!--no.num--]
2)可以用$_POST,和$_GET数组传递变量
思考题:
sys_ReturnMoreClass函数的作用是什么?
文中的代码连续使用了几次字符串替换,目的是什么?