当前位置:首页 > PHP教程 > Smarty > 列表

Smarty分页实现方法完整实例

发布:smiling 来源: PHP粉丝网  添加日期:2021-08-03 14:33:16 浏览: 评论:0 

这篇文章主要介绍了Smarty分页实现方法,涉及基于Smarty的数据库查询、分页相关计算与模板操作技巧,需要的朋友可以参考下。

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

首先是PHP文件部分:

  1. <?php 
  2. require("include.php"); //包含smarty配置部分 
  3. require 'conn.php'; //包含数据库配置部分 
  4. $pagesize=10; //设置每页数据显示数量 
  5. $url=$_SERVER['REQUEST_URI']; 
  6. $url=parse_url($url); 
  7. $url=$url['path']; 
  8. $sql="SELECT * FROM `wp_links`"; 
  9. $db_list=mysql_query($sql); 
  10. $num=mysql_num_rows($db_list); //统计数据总数 
  11. $pages=$num/$pagesize; 
  12. $pages=ceil($pages); //求出一共需要多少页进行显示 
  13. if ($_GET['page']){ 
  14.  $pageval=$_GET['page']; 
  15.  $page=($pageval-1)*$pagesize; 
  16.  } 
  17. if($num>$pagesize){ 
  18.  if (!isset($pageval)) $pageval=1; 
  19. } 
  20. if ($pages==1){ //如果总页面只有一页的话,将“上一页”“下一页”的标签替换为空。 
  21.  $pageup=""; 
  22.  $pagedown=""; 
  23. }else{ 
  24. switch($pageval){ 
  25.  case 1 :{ 
  26.  $pageup="首页"; 
  27.  $pagedown="<a href=$url?page=".($pageval+1).">下一页</a>"; 
  28.  break; 
  29.  } 
  30.  default :{ 
  31.  $pageup="<a href=$url?page=".($pageval-1).">上一页</a>"; 
  32.  $pagedown="<a href=$url?page=".($pageval+1).">下一页</a>"; 
  33.    break; 
  34.  } 
  35.  case $pages :{ 
  36.  $pageup="<a href=$url?page=".($pageval-1).">上一页</a>"; 
  37.  $pagedown="末页"; 
  38.  break; 
  39.   } 
  40. } 
  41. }$smarty->assign("pageconfig",$pageconfig); 
  42. //================================================== 
  43. $sql_list="SELECT * FROM `wp_links` LIMIT $page,$pagesize";    //由此控制数据显示数量部分 
  44. $db_list_list=mysql_query($sql_list); 
  45. while($row=mysql_fetch_array($db_list_list)){ 
  46.  $page_list[]=array("id"=>$row['link_id'],"url"=>$row['link_url'],"name"=>$row['link_name']);   //将数据库中查询内容重新赋值 
  47. } 
  48. $pageconfig="当前第 $pageval 页,共 $pages 页"; 
  49. $smarty->assign("pageconfig",$pageconfig); 
  50. $smarty->assign("pageup",$pageup); 
  51. $smarty->assign("pagedown",$pagedown); 
  52. $smarty->assign("title",$page_list); 
  53. $smarty->display("index.htm"); 
  54. ?> 

下面为模板的编写部分:

  1. <table> 
  2.  <tr> 
  3.  <td>id</td> 
  4.  <td>url</td> 
  5.  <td>name</td> 
  6.  </tr> 
  7. {section name=list loop=$title} 
  8.  <tr> 
  9.  <td>{$title[list].id}</td> 
  10.  <td>{$title[list].url}</td> 
  11.  <td>{$title[list].name}</td> 
  12.  </tr> 
  13. {/section} 
  14.  </table> 
  15. {$pageup}{$pagedown}{$pageconfig}

Tags: Smarty分页

分享到:

相关文章