Smarty分页实现方法完整实例


Posted in PHP onMay 11, 2016

本文实例讲述了Smarty分页实现方法。分享给大家供大家参考,具体如下:

首先是PHP文件部分:

<?php
require("include.php"); //包含smarty配置部分
require 'conn.php'; //包含数据库配置部分
$pagesize=10; //设置每页数据显示数量
$url=$_SERVER['REQUEST_URI'];
$url=parse_url($url);
$url=$url['path'];
$sql="SELECT * FROM `wp_links`";
$db_list=mysql_query($sql);
$num=mysql_num_rows($db_list); //统计数据总数
$pages=$num/$pagesize;
$pages=ceil($pages); //求出一共需要多少页进行显示
if ($_GET['page']){
 $pageval=$_GET['page'];
 $page=($pageval-1)*$pagesize;
 }
if($num>$pagesize){
 if (!isset($pageval)) $pageval=1;
}
if ($pages==1){ //如果总页面只有一页的话,将“上一页”“下一页”的标签替换为空。
 $pageup="";
 $pagedown="";
}else{
switch($pageval){
 case 1 :{
 $pageup="首页";
 $pagedown="<a href=$url?page=".($pageval+1).">下一页</a>";
 break;
 }
 default :{
 $pageup="<a href=$url?page=".($pageval-1).">上一页</a>";
 $pagedown="<a href=$url?page=".($pageval+1).">下一页</a>";
   break;
 }
 case $pages :{
 $pageup="<a href=$url?page=".($pageval-1).">上一页</a>";
 $pagedown="末页";
 break;
  }
}
}$smarty->assign("pageconfig",$pageconfig);
//==================================================
$sql_list="SELECT * FROM `wp_links` LIMIT $page,$pagesize";    //由此控制数据显示数量部分
$db_list_list=mysql_query($sql_list);
while($row=mysql_fetch_array($db_list_list)){
 $page_list[]=array("id"=>$row['link_id'],"url"=>$row['link_url'],"name"=>$row['link_name']);   //将数据库中查询内容重新赋值
}
$pageconfig="当前第 $pageval 页,共 $pages 页";
$smarty->assign("pageconfig",$pageconfig);
$smarty->assign("pageup",$pageup);
$smarty->assign("pagedown",$pagedown);
$smarty->assign("title",$page_list);
$smarty->display("index.htm");
?>

下面为模板的编写部分:

<table>
 <tr>
 <td>id</td>
 <td>url</td>
 <td>name</td>
 </tr>
{section name=list loop=$title}
 <tr>
 <td>{$title[list].id}</td>
 <td>{$title[list].url}</td>
 <td>{$title[list].name}</td>
 </tr>
{/section}
 </table>
{$pageup}{$pagedown}{$pageconfig}

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 PHP
深入PHP FTP类的详解
Jun 13 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
Oct 16 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
May 21 PHP
关于PHP开发的9条建议
Jul 27 PHP
PHP的数组中提高元素查找与元素去重的效率的技巧解析
Mar 03 PHP
Zend Framework框架Smarty扩展实现方法
Mar 22 PHP
PHP预定义变量9大超全局数组用法详解
Apr 23 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
PHP session垃圾回收机制实例分析
Jun 28 PHP
PHP利用curl发送HTTP请求的实例代码
Jul 09 PHP
Laravel中GraphQL接口请求频率实战记录
Sep 01 PHP
php简单获取复选框值的方法
May 11 #PHP
php上传图片类及用法示例
May 11 #PHP
php通过smtp邮件验证登陆的方法
May 11 #PHP
Smarty变量用法详解
May 11 #PHP
基于PHP实现商品成交时发送短信功能
May 11 #PHP
Smarty环境配置与使用入门教程
May 11 #PHP
理解php依赖注入和控制反转
May 11 #PHP
You might like
PHP解析目录路径的3个函数总结
2014/11/18 PHP
PHP+sqlite数据库操作示例(创建/打开/插入/检索)
2016/05/26 PHP
php事件驱动化设计详解
2016/11/10 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
很酷的javascript loading效果代码
2008/06/18 Javascript
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
javascript实现颜色渐变的方法
2013/10/30 Javascript
jQuery获取(选中)单选,复选框,下拉框中的值
2014/02/21 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
微信小程序 底部导航栏目开发资料
2016/12/05 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
BootStrap的select2既可以查询又可以输入的实现代码
2017/02/17 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
vue-cli设置css不生效的解决方法
2020/02/07 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
pytyon 带有重复的全排列
2013/08/13 Python
python实现巡检系统(solaris)示例
2014/04/02 Python
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
python实现数独算法实例
2015/06/09 Python
python 线程的暂停, 恢复, 退出详解及实例
2016/12/06 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
Python实现深度遍历和广度遍历的方法
2019/01/22 Python
Django 实现admin后台显示图片缩略图的例子
2019/07/28 Python
python 进程 进程池 进程间通信实现解析
2019/08/23 Python
python传到前端的数据,双引号被转义的问题
2020/04/03 Python
用CSS禁用输入法(CSS3 UI规范)实例解析
2012/12/04 HTML / CSS
纯CSS实现设置半个字符的样式
2014/07/03 HTML / CSS
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
《临死前的严监生》教学反思
2014/02/13 职场文书
施工单位安全责任书
2014/07/24 职场文书
欠款起诉书范文
2015/05/19 职场文书
Django migrate报错的解决方案
2021/05/20 Python
Java常用工具类汇总 附示例代码
2021/06/26 Java/Android