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 相关文章推荐
真正面向对象编程:PHP5.01发布
Oct 09 PHP
一个程序下载的管理程序(三)
Oct 09 PHP
基于php在各种web服务器的运行模式详解
Jun 03 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
Jun 27 PHP
php获取表单中多个同名input元素的值
Mar 20 PHP
改写ThinkPHP的U方法使其路由下分页正常
Jul 02 PHP
php+ajax实时刷新简单实例
Feb 25 PHP
php不使用copy()函数复制文件的方法
Mar 13 PHP
基于php实现随机合并数组并排序(原排序)
Nov 26 PHP
php cookie用户登录的详解及实例代码
Jan 03 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
Feb 06 PHP
PHP多进程编程实例详解
Jul 19 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
利用Memcached在php下实现session机制 替换PHP的原生session支持
2010/08/21 PHP
php使用curl抓取qq空间的访客信息示例
2014/02/28 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
一张表格告诉你windows.onload()与$(document).ready()的区别
2014/05/16 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
jQuery实现html双向绑定功能示例
2017/10/09 jQuery
创建echart多个联动的示例代码
2018/11/23 Javascript
cocos2dx+lua实现橡皮擦功能
2018/12/20 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
微信小程序通过一个json实现分享朋友圈图片
2019/09/03 Javascript
Layui事件监听的实现(表单和数据表格)
2019/10/17 Javascript
Vue 3.0双向绑定原理的实现方法
2019/10/23 Javascript
JavaScript实现简单验证码
2020/08/24 Javascript
[06:44]2018DOTA2亚洲邀请赛4.5 SOLO赛 MidOne vs Sumail
2018/04/06 DOTA
使用python实现递归版汉诺塔示例(汉诺塔递归算法)
2014/04/08 Python
Python写入CSV文件的方法
2015/07/08 Python
利用Python yagmail三行代码实现发送邮件
2018/05/11 Python
pybind11和numpy进行交互的方法
2019/07/04 Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
2020/03/16 Python
Pytorch 使用CNN图像分类的实现
2020/06/16 Python
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
Hotels.com香港酒店网:你的自由行酒店订房专家
2018/01/22 全球购物
维多利亚的秘密阿联酋官网:Victoria’s Secret阿联酋
2019/12/07 全球购物
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
UDP协议功能
2013/01/06 面试题
教师评优事迹材料
2014/01/10 职场文书
运动会广播稿50字
2014/01/26 职场文书
致400米运动员广播稿
2014/02/07 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
孟佩杰观后感
2015/06/17 职场文书
劳动保障事务所个人工作总结
2015/08/12 职场文书
社区挂职锻炼个人工作总结
2015/10/23 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
mysql升级到5.7时,wordpress导数据报错1067的问题
2021/05/27 MySQL
eclipse创建项目没有dynamic web的解决方法
2021/06/24 Java/Android
「玫瑰之王的葬礼」舞台剧主视觉图公开
2022/03/21 日漫