- 浏览: 348187 次
-
文章分类
最新评论
-
亚当爱上java:
"给pre-commit添加可执行权限:chmod ...
svn强制要求提交注释--pre-commit钩子 -
rosasyou:
不知道这篇文章是怎么才让人看的?估计不是浏览器兼容问题。 ,与 ...
Zend Framework的DB处理 -
jinjiankang:
$youngest=`svnlook youngest $sv ...
svn备份策略 -
wangxc:
你好,我按照你介绍的方法在创建完weekly_backup.p ...
svn备份策略 -
yangfuchao418:
...
关于memcached的浅见
今天写Smarty,用到分页函数时出现了问题,于是乎,百度上搜了出来大家参考一下!
SMARTY分页详解:
使用SMARTY进行分页遇到问题的人们,将从这里学到如何更好的在SMARTY中进行分页....首先必需说明的是:这篇教程是我从别的教程改过来的,
所以不能说是完全原创,但我把它说明的更加详细,以及提供了完备的示例..你将很清楚的理解里的每个变量的作用及其使用方法....希望这篇文字对对你产
生帮助....如果,下面的文字真的对你产生了帮助,别忘了"呱唧呱唧"(鼓掌哦)!!!
PHP:[Copy to clipboard]
<?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"=&
gt;$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 == 1 ) {
$pager_StartNum = 0;
//如果当前页不是第一页,则记录是从当前的页数减去1乘以每页的显示记录数开始的
} else {
$pager_StartNum = ($pager_PageID -1) * $pager_Size;
}
//当前页的结束记录数是起始记录数加上每页的显示记录数
$pager_EndNum = $pager_StartNum + $pager_Size;
//如果当前页是第一页,且总页数大于1
if ($pager_PageID == 1 && $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 > 1 && $pager_PageID <= $pager_Number) {
//中间
$pager_Links = "<a
href=".$pager_URL."&pager_PageID=".($pager_PageID-1).">上一页</a&
gt; | <a
href=".$pager_URL."&pager_PageID=".($pager_PageID+1).">下一页</a&
gt;";
//否则
} 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'');
?>
发表评论
-
图片压缩的一些心得
2010-11-03 11:45 2040http://blog.lizhigang.net/arc ... -
PHP程序员面临的成长瓶颈
2010-10-25 10:06 2030作为Web开发中应用最广泛的语言之一,PHP有着大量的粉丝 ... -
URL重写相关
2010-07-26 18:13 1253初级URL重写指南 http://lamp.lin ... -
关于PHP的mod_rewrite重写模块技术个人觉得最好的一篇文章
2010-07-26 09:30 2303最近手里一个PHP项目要用到mod_rewrite模块,很 ... -
PHP源代码分析- tick(s)
2010-07-24 10:13 1993By Altair, http://www.phpint ... -
php多线程编程
2010-07-21 23:52 1097http://www.cnblogs.com/niniwzw/ ... -
php pcntl_fork和pcntl_fork 的用法
2010-07-21 22:23 2170http://www.jb51.net/article/177 ... -
探讨高并发写入文件内容
2010-07-11 22:48 2851读写相关的问题是永远存在的,文件锁就是为了解决这个问题而做的, ... -
php中,高并发状态下文件的读写
2010-07-11 22:28 8800对于日IP不高或者说并发数不是很大的应用,一般不用考虑这些 ... -
HTTP POST from PHP, without cURL
2010-07-06 17:28 1640Update May 2010: This is one ... -
php fsockopen解决办法。
2010-07-06 15:07 3197Author:David | English Ver ... -
用 PHP V5 开发多任务应用程序
2010-07-04 00:39 1250http://www.ibm.com/developerw ... -
git使用总结
2010-07-02 23:51 1393http://zhwen.org/?p=articles/gi ... -
Linux消息队列原理与应用
2010-07-02 18:03 9559http://www.wanglong-neu.cn/ ... -
我说PHPer的水平区分(转载)
2010-07-02 10:55 1495说句实话,写这个真够无 ... -
正则表达式解题经验谈
2010-06-29 22:08 1108正则表达式解题经验谈 ... -
深入浅出之正则表达式
2010-06-28 21:14 810dragon.cnblogs.com/archive/2006 ... -
stream_set_blocking让程序无阻塞
2010-06-28 09:48 1402stream_set_blocking让程序 ... -
什么是Socket?Socket协议的形象描述
2010-06-28 00:11 1610socket的英文原义是“ ... -
完善匹配中文的Php正则表达式
2010-06-11 16:15 2309这段时间试图使用php正 ...
相关推荐
### PHP、Smarty与jQuery Ajax 分页插件jquery.pager.js的使用详解 #### 一、引言 随着互联网技术的不断发展,用户对于网页交互性的需求越来越高。为了提升用户体验,Ajax技术逐渐成为一种不可或缺的技术手段。它...
### Smart分页技术详解 #### 一、简介 在PHP开发中,为了提高用户体验和减少服务器负担,分页是一项常用的技术。Smart分页是基于PHP模板引擎Smarty的一种分页实现方式,通过结合PHP代码和Smarty模板语法来实现数据...
【PHP+Smarty留言板详解】 PHP和Smarty是一种常见的Web开发组合,用于构建动态网站。PHP作为后端脚本语言,处理服务器端逻辑,而Smarty则是一个模板引擎,将业务逻辑与前端展示分离,使得代码更加清晰易维护。在这...
例如,如果我们要在网页上展示数据库查询结果,并且需要对数据进行分页显示,使用section可以非常方便地实现: ```smarty 姓名 电子邮件 {section name=user loop=$users start=0 step=1 max=10} <td><{$users...
在这个系统中,核心组件包括Smarty模板引擎、MySQL数据库操作类以及分页功能,这些都是Web开发中不可或缺的基础元素。 **1. Smarty模板引擎** Smarty是PHP领域内广泛使用的模板引擎,它的主要作用是将业务逻辑与...
10-20 8 smarty分页技术 10-20 9 10-22 1 ajax介绍 无刷新验证用户名 10-22 2 ajax如何处理xml格式返回数据 10-22 3 json 10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金...
10-20 8 smarty分页技术 10-20 9 10-22 1 ajax介绍 无刷新验证用户名 10-22 2 ajax如何处理xml格式返回数据 10-22 3 json 10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金...
10-20 8 smarty分页技术 10-20 9 10-22 1 ajax介绍 无刷新验证用户名 10-22 2 ajax如何处理xml格式返回数据 10-22 3 json 10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金...
10-20 8 smarty分页技术 10-20 9 10-22 1 ajax介绍 无刷新验证用户名 10-22 2 ajax如何处理xml格式返回数据 10-22 3 json 10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金...
10-20 8 smarty分页技术 10-20 9 10-22 1 ajax介绍 无刷新验证用户名 10-22 2 ajax如何处理xml格式返回数据 10-22 3 json 10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金...
使用Ajax和Smarty模板引擎实现无刷新分页功能。 - **步骤一**:配置Smarty环境。 - **步骤二**:使用Ajax请求数据。 - **步骤三**:使用Smarty模板渲染数据。 示例:配置Smarty环境 ```php $smarty = new Smarty;...
- 高级数据库操作技巧,如分页查询。 4. **RBAC权限管理篇** - RBAC原理介绍。 - 实现RBAC权限管理的具体方法。 5. **模板应用篇** - Smarty模板引擎功能和设置讲解。 - 将Ajax功能与Smarty模板结合的方法。 ...
- **学习目标**: 理解分页机制,能够在项目中实现分页功能。 #### 14. PHP上传原理及应用 - **知识点**: 讲解了文件上传的工作原理,包括表单设置、文件接收、文件存储等过程。 - **学习目标**: 掌握文件上传的基本...
【PHP留言本程序详解】 PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,尤其在Web开发领域,PHP的应用十分广泛。本篇文章将详细探讨一个英文版的PHP留言本程序,它具有强大的功能,可以满足用户互动...
13:PHP+MYSQL分页原理 14:PHP上传原理及应用 15:PHP生成HTML文件原理 16:PHP小偷程序原理和实例 17:PHP面向对象开发的学习(一) 18:PHP面向对象开发的学习(二) 19:PHP面向对象开发的学习(三) 20:PHP...
【PHP新闻源码详解】 PHP新闻源码是一个用于构建新闻发布系统的软件代码,它通常包括了创建、编辑、删除和展示新闻的功能。在这个商业案例中,我们可以观察到代码规范性是其核心亮点,这意味着代码结构清晰,注释...
《PHP实例开发:嘉缘人才系统php版GBK详解》 PHP作为一款强大的服务器端脚本语言,广泛应用于网站开发,其灵活性和可扩展性深受开发者喜爱。本文将深入解析名为"嘉缘人才系统php版GBK"的实例项目,旨在帮助读者理解...
【PHP实例:BBS论坛详解】 在Web开发领域,PHP是一种广泛应用的服务器端脚本语言,尤其在构建动态网站和论坛系统方面表现出色。"PHP实例BBS论坛"是一个典型的项目,它涵盖了基础的Web交互功能,如用户注册、登录、...
PHP100视频教程13:PHP+MYSQL分页原理 PHP100视频教程14:PHP上传原理及应用 PHP100视频教程15:PHP生成HTML文件原理 PHP100视频教程16:PHP小偷程序原理和实例 PHP100视频教程17:PHP面向对象开发的学习(一) ...
【PHP新闻博客系统详解】 PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,尤其在Web开发领域,PHP的应用十分广泛。本案例中的"基于PHP的新闻博客系统"是一个典型的Web应用实例,它结合了数据库管理和...