超简单而又实在的 SMARTY 分页
时间:2006-11-29
来源:互联网
(源码文件一会打包)
补:效果图(图1)
以下是模版文件page.tpl.htm
代码:
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link href="css/home.css" rel="stylesheet" type="text/css" />
<link href="read.css" rel="stylesheet" type="text/css" />
<title>推荐导读</title>
</head>
<body>
<div class="row">
<div class="tab_label" style="background-color:#FEF4F5; float:left">
<div style="float:left; width:420px; overflow:hidden">
<ul>
{foreach from=$list item=rs key=key}
<li>
<span class="li_dot">4</span>
<a target="_blank" href="#{$rs.Title}">{$rs.Title}</a>
</li>
{/foreach}
</ul>
</div>
</div>
</div>
<p>
{pager rowcount=$totalpage limit=1 shift=1 no_first=true separator="|" class_text="pager_text" txt_pos="side"}
</body>
</html>
代码:
{pager rowcount=$totalpage limit=1 shift=1 no_first=true separator="|" class_text="pager_text" txt_pos="side"}separator="|" 就是页码之间的一个间隔
rowcount=$totalpage 总记录数
limit=1 页码间隔加1 假如设为2 可能会变成 1 3 5 7 .....
其它的也不重要吧,呵呵~,参数的具体设置可以查看function.pager.php (老外的。。。半懂半不懂)
那么我们的程序怎样写呢?
代码:
<?phprequire_once("./includes/init.php");
/* SMARTY 分页 */
//$smarty->caching = false;
$lady_url ="http://lady.poco.cn/";
$content = array();
$pagesize = 5;
$sql.= "SELECT Image,Title,Intro,CreationDate,ContentID ".
"FROM cms_db.cms_content_4 ".
"WHERE Zine_type_id IN(5,6,7,11,24) ".
"ORDER BY ContentID DESC ";
$res = $db->query($sql);
//结果集
$total = $res->RecordCount();
//记录条数
$totalpage = ceil($total/$pagesize);
//总页数
$page = ceil($_GET["pos"])+1;
//当前页
$sql.= "limit ".($pagesize * ($page-1)).", ".$pagesize;
//语句
$idx = 0;
$res = $db->query($sql);
while ($rs = $res->FetchRow())
{
$content[$idx]['Image'] = $rs['Image'];
$content[$idx]['Title'] = $rs['Title'];
$content[$idx]['Intro'] = $rs['Intro'];
$content[$idx]['html_url'] = date("Y-m-d",$rs['CreationDate'])."/".$rs['ContentID'].".html";
$content[$idx]['ContentID'] = $rs['ContentID'];
$idx++;
}
$smarty->assign('totalpage',$totalpage);
$smarty->assign('list',$content);
$smarty->assign('lady_url',$lady_url);
$smarty->display("page.tpl.htm",$page);
?>
$smarty->display("page.tpl.htm",$page); 目的是为了让它每一个页都生成一个新的页。。不然,刷来刷去都是同一个页。
最后,只要把function.pager.php 放到smarty\plugins 目录下,你就可调用分页了。
怎样?够简单了吧~打包程序给你们
看了要回贴啊,动力所在~
[ 本帖最后由 sufing0x1 于 2006-11-29 10:41 编辑 ]

2006-11-29 10:38
图1
作者: sufing0x1 发布时间: 2006-11-28
作者: leehui1983 发布时间: 2006-11-28
作者: 王洋姜 发布时间: 2006-11-28
作者: MySQL 发布时间: 2006-11-28
1楼补上效果图吧~呵呵~
作者: sufing0x1 发布时间: 2006-11-29

作者: ScottZhang 发布时间: 2006-11-29
作者: leehui1983 发布时间: 2006-11-29
作者: hmly 发布时间: 2006-12-05
作者: scorpion 发布时间: 2006-12-07
作者: 86800787 发布时间: 2006-12-08
作者: sufing0x1 发布时间: 2006-12-08
作者: gewanhong 发布时间: 2006-12-25
有点开心,看来是有点用了,呵呵~:lol
作者: sufing0x1 发布时间: 2006-12-27

作者: leehui1983 发布时间: 2006-12-27
等赶完了,再把工程中用到和学习到的技巧总结出来~
作者: sufing0x1 发布时间: 2006-12-27
作者: jeromenie 发布时间: 2007-02-05
作者: remote_addr 发布时间: 2007-04-23
Warning: Smarty error: plugin "pager": bad value for : "txt_pos" in E:\www\blog\code\libs\Smarty\Smarty.class.php
作者: willke 发布时间: 2007-08-15
作者: fangkejie 发布时间: 2007-08-28

作者: ssww 发布时间: 2007-08-30
作者: GoodLuck 发布时间: 2007-08-31

作者: design_dd 发布时间: 2008-04-11
作者: cqc1008 发布时间: 2008-07-05
作者: leftwater 发布时间: 2008-07-07
作者: huihot 发布时间: 2008-08-01

作者: richardhc 发布时间: 2008-08-04
作者: longkingcx 发布时间: 2008-08-12
作者: superdebug 发布时间: 2008-08-12
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28