smarty分页

  <? php
require_once('include/common.inc.php');
//这里是个接口common.inc.php里面包函了一些常用到的函数类库以及 Smarty
include_once('header.php');
//调用头部信息,SESSION的信息全都保存在这里,这样做的好处是几乎所有的页面都不需要在开头输入session_start();
$smarty new Smarty_Calvin;
//调用这个对象
$smarty->caching false;
//不使用缓存
$swe "SET NAMES gb2312;";
//如果是使用MYSQL5的数据库的话,这样做是非常必要的。要不然极易出现乱码
  mysql_query($swe
);
  
//下面是数据库的关联查找,将得到数据库中的记录
  $sqle 
"SELECT calvin.did,calvin.title,calvin.voidbulk,calvin.databulk,
                  calvin.place,calvin.price,calvin.line,calvin.explan,
                  calvin.identify,
                  idcof_extend.identify,idcof_extend.pid,idcof_extend.pid,idcof_extend.start,idcof_extend.end,idcof_extend.taxis
          FROM    calvin,extend
          WHERE   calvin.identify idcof_extend.identify
          AND     calvin.did extend.pid
          ORDER BY  extend.taxis DESC"

  $resulte mysql_query($sqle) or die(mysql_error
());
  $ie= mysql_num_rows($resulte);
//得到结果集的数量
   //把结果集存到 Smarty可以用的数组中
   while(($rowe=mysql_fetch_array($resulte)) && $ie 0
)
   {
      $arraye[] array("dide"=>$rowe["did"],"titlee"=>$rowe["title"],"voidbulke"=>$rowe['voidbulk'],"databulke"=>$rowe['databulk'
],
                       "placee"=>$rowe['place'],"linee"=>$rowe['line'],"pricee"=>$rowe["price"],"explane"=>cutstr($rowe["explan"],180));
//cutstr这个函数是自定义的,从common.inc.php而来
      $ie
--;
   }
   $smarty->assign('arraye',$arraye);
//把数组指向模板
//下面的部分是本教程的重点。
   // get_template_vars返回一个指定的已赋值的模板变量的值
$smartyArr $smarty->get_template_vars
();
        
//print_R($smartyArr);
        //记录总数,每页显示记录条数,总页数
        $pager_Total count($smartyArr);
//总记录数
        //echo $pager_Total;
        $pager_Size 10;
//设定每页显示的记录数
        $pager_Number ceil($pager_Total/$pager_Size);
//得到总页数,如果有小时就进一步取整
        $pager_URL "dummyhost.php?action=View"
;
        
        
//获得当前页的页数,从REQUEST获得
        if(isset($_GET['pager_PageID'])&& !empty($_GET['pager_PageID'
])){
            $pager_PageID intval($_GET['pager_PageID'
]);
        }else{
            
//如果是第一次访问,则设定当前页为第一页
            $pager_PageID 1
;
                 

        
//每页的起,始记录数
        //如果当前页是第一页,则记录是从第0条记录开始的
        if ($pager_PageID == 
{
            $pager_StartNum 0
;
        
//如果当前页不是第一页,则记录是从当前的页数减去1乘以每页的显示记录数开始的    
        
else {
             $pager_StartNum ($pager_PageID -1) $pager_Size
;
           
        
//当前页的结束记录数是起始记录数加上每页的显示记录数
        $pager_EndNum $pager_StartNum $pager_Size
;
        
//如果当前页是第一页,且总页数大于1
        if ($pager_PageID == && $pager_Number>1
{
            
//第一页
            $pager_Links "上一页 <a href=".$pager_URL."&pager_PageID=".($pager_PageID+1).">下一页</a>"
;
        
//否则如果当前页是最后一页,且总页数大于1    
        elseif($pager_PageID == $pager_Number && $pager_Number>1
{
            
//最后一页
             $pager_Links "<a href=".$pager_URL."&pager_PageID=".($pager_PageID-1).">上一页</a> 下一页"
;
        
//否则如果当前页不是第一页,且当前页小于等于最后一页     
        elseif ($pager_PageID && $pager_PageID <= $pager_Number
{
            
//中间
             $pager_Links "<a href=".$pager_URL."&pager_PageID=".($pager_PageID-1).">上一页</a> <a href=".$pager_URL."&pager_PageID=".($pager_PageID+1).">下一页</a>"
;
        
//否则
        
else {
             $pager_Links "上一页 下一页"
;
        }
        
        $smarty->assign('search','dummyhost_search.php'
);  
        include_once('dummyhost_ad.php'
);
         
        $smarty->assign('pager_Total',$pager_Total
);        
        $smarty->assign('pager_StartNum',$pager_StartNum
);
        $smarty->assign('pager_EndNum',$pager_EndNum
);
        $smarty->assign('pager_Links',$pager_Links
);
        $smarty->display("dummyhost.tpl"
);       
        include_once('footer.php'); ?> 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值