PHP分頁代碼實例分享

PHP分頁代碼實例教程

​分享一段php分頁代碼,很簡單,作爲php分頁的入門教程不錯。

專題推薦:php分頁代碼大全    php分頁原理     php分頁類

數據庫鏈接及參數設定

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//數據庫連接
@mysql_connect("localhost","root","root123") or die("連接數據庫失敗:".mysql_error());
mysql_select_db("test");
mysql_query("set character set 'gbk'");
//每頁顯示的留言數
$pagesize = 4;
輸出當前頁數據
//確定當前頁數 $p 參數
$p = $_GET['p']?$_GET['p']:1;
//數據指針
$offset = ($p-1)*$pagesize;
//查詢本頁顯示的數據
$query_sql = "SELECT * FROM guestbook ORDER BY id DESC LIMIT  $offset , $pagesize";
$result = mysql_query($query_sql);
//循環輸出
while($gblist = mysql_fetch_array($result)){
    echo '<a href="',$gblist['nickname'],'">',$gblist['nickname'],' ';
    echo '發表於:',date("Y-m-d H:i", $gblist[createtime]),'<br />';
    echo '內容:',$gblist['content'],'<br /><hr />';
}
確定當前頁參數 $p 中,使用了一個三元運算符:
$p = $_GET['p']?$_GET['p']:1;

 

理解該運算符:$_GET['p'] 存在嗎?如果存在,那麼 $p = $_GET['p'] ,如果不存在,那麼 $p = 1 。

下面就是讀取當前頁面顯示數據的代碼,該部分可參考《MySQL Select From 查詢數據》。

 

第二部分,輸出分頁格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//分頁代碼
//計算留言總數
$count_result = mysql_query("SELECT count(*) as count FROM guestbook");
$count_array = mysql_fetch_array($count_result);
//計算總的頁數
$pagenum=ceil($count_array['count']/$pagesize);
echo '共 ',$count_array['count'],' 條留言';
//循環輸出各頁數目及連接
if ($pagenum > 1) {
    for($i=1;$i<=$pagenum;$i++) {
        if($i==$p) {
            echo ' [',$i,']';
        } else {
            echo ' <a href="index.php?p=',$i,'">',$i,'';
        }
    }
}

如果確定頁數大於 1 ,則開始輸出分頁頁碼。如果是當前頁碼,這輸出 [2] 這樣的格式,如果不是當前頁碼,則輸出超鏈接格式。

完整代碼

完整代碼如下:

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
<?php
//數據庫連接
@mysql_connect("localhost","root","root123") or die("連接數據庫失敗:".mysql_error());
mysql_select_db("test");
mysql_query("set character set 'gbk'");
//每頁顯示的留言數
$pagesize = 4;
//確定頁數 p 參數
$p = $_GET['p']?$_GET['p']:1;
//數據指針
$offset = ($p-1)*$pagesize;
//查詢本頁顯示的數據
$query_sql = "SELECT * FROM guestbook ORDER BY id DESC LIMIT  $offset , $pagesize";
//echo $query_sql;
$result = mysql_query($query_sql);
//循環輸出
while($gblist = mysql_fetch_array($result)){
    echo '<a href="',$gblist['nickname'],'">',$gblist['nickname'],'';
    echo '發表於:',date("Y-m-d H:i", $gblist[createtime]),'<br />';
    echo '內容:',$gblist['content'],'<br /><hr />';
}
//分頁代碼
//計算留言總數
$count_result = mysql_query("SELECT count(*) as count FROM guestbook");
$count_array = mysql_fetch_array($count_result);
//計算總的頁數
$pagenum=ceil($count_array['count']/$pagesize);
echo '共 ',$count_array['count'],' 條留言';
//循環輸出各頁數目及連接
if ($pagenum > 1) {
    for($i=1;$i<=$pagenum;$i++) {
        if($i==$p) {
            echo ' [',$i,']';
        } else {
            echo ' <a href="index.php?p=',$i,'">',$i,'';
        }
    }
}
?>

運行顯示效果:

 

內容:Hello

 

--------------------------------------------------------------------------------

小麗 發表於:2010-09-01 01:42

內容:hahaha

 

--------------------------------------------------------------------------------

小張 發表於:2010-01-22 22:05

內容:來看看

 

--------------------------------------------------------------------------------

小明 發表於:2010-01-22 22:01

內容:做得好,繼續努力

 

--------------------------------------------------------------------------------

共 10 條留言 1 [2] 3

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章