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 相关文章推荐
PHPMYADMIN 简明安装教程 推荐
Mar 07 PHP
PHP重定向的3种方式
Mar 07 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
Jun 29 PHP
thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
Oct 30 PHP
PHP设计模式之迭代器模式
Jun 17 PHP
如何用PHP做到页面注册审核
Mar 02 PHP
详解cookie验证的php应用的一种SSO解决办法
Oct 20 PHP
ThinkPHP5框架缓存查询操作分析
May 30 PHP
在PHP中实现使用Guzzle执行POST和GET请求
Oct 15 PHP
PHP常用函数之根据生日计算年龄功能示例
Oct 21 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 PHP
PHP实现简单的计算器
Aug 28 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修改NetBeans默认字体的大小
2013/07/02 PHP
测试php连接mysql是否成功的代码分享
2014/01/24 PHP
php实现购物车功能(下)
2016/01/05 PHP
php生成图片验证码的方法
2016/04/15 PHP
php5与php7的区别点总结
2019/10/11 PHP
jQuery EasyUI API 中文文档 - Dialog对话框
2011/11/15 Javascript
extJS中常用的4种Ajax异步提交方式
2014/03/07 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
JavaScript判断字符长度、数字、Email、电话等常用判断函数分享
2015/04/01 Javascript
js实现同一页面多个不同运动效果的方法
2015/04/10 Javascript
jQuery插件StickUp实现网页导航置顶
2015/04/12 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
vue2.0全局组件之pdf详解
2017/06/26 Javascript
VUE2.0+Element-UI+Echarts封装的组件实例
2018/03/02 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
JS运算符简单用法示例
2020/01/19 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
2020/04/13 Javascript
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
使用Python检测文章抄袭及去重算法原理解析
2019/06/14 Python
python频繁写入文件时提速的方法
2019/06/26 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
2019/07/22 Python
Python sorted排序方法如何实现
2020/03/31 Python
基于Python的自媒体小助手---登录页面的实现代码
2020/06/29 Python
Python类class参数self原理解析
2020/11/19 Python
详解Python Celery和RabbitMQ实战教程
2021/01/20 Python
H5 video poster属性设置视频封面的方法
2020/05/25 HTML / CSS
日本乐天官方海外转运服务:Rakuten Global Express
2018/11/30 全球购物
最新党员思想汇报
2014/01/01 职场文书
青年教师培训方案
2014/02/06 职场文书
完整版商业计划书
2014/09/15 职场文书
花田少年史观后感
2015/06/16 职场文书
六一儿童节致辞稿(3篇)
2019/07/11 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
Win11显卡控制面板打开显卡设置方法
2022/04/20 数码科技