PHP分頁(yè),對(duì)于經(jīng)常寫程序的人來(lái)說(shuō),這是必不可少的一部分,只要寫頁(yè)面幾乎都要用到,用的多了也沒(méi)什么感覺(jué)了,但對(duì)于初學(xué)者來(lái)說(shuō),這個(gè)使用基本原理還是有些復(fù)雜的,為了照顧新人,這里寫出了基本使用方法,高手可以直接忽略.
<?php include("conn.php"); //include, require $db = conndb(); //連接數(shù)據(jù)庫(kù) //統(tǒng)計(jì)總數(shù) 開(kāi)始 $sql = "select count(*) as total from stu"; $query = $db->query($sql); $query->setFetchMode(PDO::FETCH_ASSOC); $result = $query->fetchAll(); $total = $result[0]["total"]; //總數(shù) //統(tǒng)計(jì)總數(shù) 結(jié)束 $pagenum = 2; // 每頁(yè)顯示的條目 $pages = ceil($total/$pagenum); //總的頁(yè)數(shù) $page = isset($_GET["page"])?$_GET["page"]:1; // 當(dāng)前第幾頁(yè) $startpos = ($page - 1) * $pagenum; // 計(jì)算出 每頁(yè)開(kāi)始的位置 $sql = "select * from stu order by id asc limit $startpos,$pagenum "; /* limit 3,2 3表示開(kāi)始的位置,2表示取2條 order by id 按照 id 排序 asc 升序 desc 降序*/ $query = $db->query($sql); $query->setFetchMode(PDO::FETCH_ASSOC); //只關(guān)聯(lián)名稱索引,去掉數(shù)字的下標(biāo)索引 $result = $query->fetchAll(); $str = ""; if($result){ foreach ($result as $row) { $id = $row["id"]; $time = date("Y-m-d H:i:s",$row["addtime"]); $str .= "<tr>"; $str .= "<td><input type='checkbox' name='ids[]' value='$id'></td>"; $str .= "<td>".$row["names"]."</td>"; $str .= "<td>".$row["sex"]."</td>"; $str .= "<td>".$row["age"]."</td>"; $str .= "<td>".$row["hobby"]."</td>"; $str .= "<td>".$time."</td>"; $str .= "<td> <a href='detail.php?id=$id'>詳細(xì)</a> <a href='update.php?id=$id'>修改</a> <a href='del.php?id=$id'>刪除</a> </td>"; $str .= "</tr>"; } } ?>HTML頁(yè)面輸出
<table border="1" style="width: 600px; margin: 0 auto;"> <tr> <td></td> <td>姓名</td> <td>性別</td> <td>年齡</td> <td>愛(ài)好</td> <td>時(shí)間</td> <td>操作</td> </tr> <?php echo $str; ?> <tr> <td colspan="7"> <input type="submit" value="刪除"> </td> </tr> <tr> <td colspan="7"> <?php for($i=1;$i<=$pages;$i++){ echo "<a href='?page=$i'>$i</a> "; } ?> </td> </tr> </table>