php分页的实现

php常见分页有3种,一种是文字分页,比如说上一页,下一页之类的,还有一种数字分页,像1,2,3...之类的,这个比较简单,前者稍微复杂些.最后一种是他们2者结合.

下面是代码:

 1 //获取当前页数
 2         if(isset($_GET['page'])){
 3             $page = intval($_GET['page']);
 4         }
 5         else {
 6             $page=1;
 7         }
 8         $PageSize = 1//每页的记录数量
 9         // 获取总数量
10         $sql = "select count(*) from blog";
11         $result = mysql_query($sql);
12         $row = mysql_fetch_row($result);
13         $amount = $row[0];
14         /*计算总页数
15         if($amount){
16             if($amount<$PageSize) { //如果总数量小于每页的记录数量$PageSize,那么只有一页.
17                 $PageCount = 1;
18             }
19             if($amount%$PageSize) { //总数量除以每页的记录数量取于
20                 $PageCount =& amp;nbsp;(int)($amount/$PageSize)+1;//如果有于,则页数等于总数量除每页的记录数加1
21             }
22             else{
23                 $PageCount =& amp;nbsp;$amount/$PageSize;//没有,则结果是页数
24             }
25         }
26         else{
27             $PageCount = 0;
28         }*/
29         $PageCount = ceil($amount/$PageSize);//总页数=总数量除以每页数量  如果有小树,则进位< span style="color: #008000;">
30         if($Page>$PageCount|$page==0){// 如果当前页数大于总页数
31             echo "不能发现此页!";
32             exit();
33         }
34       
35         //翻页链接
36         $PageOut = '';
37         if($page==1){//如果页数只有一页
38             $PageOut .= '第一页|上一页';
39         }
40         else{
41             $PageOut .= '<a href="index.php?page=1">第一页& lt;/a>|<a href="index.php?page='.($page-1).'">上一页</a>|';
42         }
43         if($page==$PageCount||$PageCount==0){//如果当前页等于总也数
44             $PageOut .= '下一页|尾页';
45         }
46         else{
47             $PageOut .=  '<a href="index.php?page='.($page+1).'">下一页</a>|<a href="index.php?page='.$PageCount.'">尾页</a>';
48         }
49         //获取数据
50         if($amount){
51         $sql="select * from blog limit ".($page-1)*($PageSize).",$PageSize";
52         $result=mysql_query($sql);
53         while($row=mysql_fetch_array($result)){//此段代码只是示例
54             $blogs[] = array('bid'=>$row['bid'],'title'=>$row['title']);
55             foreach ($blogs as $blog){
56             $title=$blog['title'];
57             }
58             $output = "<a href=index.php?action=blog_del&bid=$blog[bid]>删除</a>".
59             "<a href=index.php?action=blog_edit&bid=$blog[bid]>编辑</a>".
60             "<a href=index.php?action=blog_view&bid=$blog[bid]>查看</a>";
61             include("template/default/blog.tpl.php");
62             echo $PageOut;
63         }
64         for($i=1;$i<=$PageCount;$i++){//数字分页
65            $Pageshow = ($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>";
66            echo $PageShow;
67          }
68          echo $amount.'条记录,每页'.$PageSize.'条,共'.$PageCount.'';
69         }

posted on 2010-11-10 22:07  startup  阅读(267)  评论(0编辑  收藏  举报

导航