本文實例講述了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相關內容感興趣的讀者可查看本站專題:《smarty模板入門基礎教程》、《PHP模板技術總結》、《PHP基於pdo操作數據庫技巧總結》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家基於smarty模板的PHP程序設計有所幫助。