本文实例讲述了Smarty分页实现方法。分享给大家供大家参考,具体如下:
首先是PHP文件部分:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
<?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" );
?>
|
下面为模板的编写部分:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
< 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程序设计有所帮助。