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($amount17 $pagecount = 1;
18 }
19 if($amount%$pagesize){ //总数量除以每页的记录数量取于
20 $pagecount = (int)($amount/$pagesize)+1;//如果有于,则页数等于总数量除每页的记录数加1
21 }
22 else{
23 $pagecount = $amount/$pagesize;//没有,则结果是页数
24 }
25 }
26 else{
27 $pagecount = 0;
28 }*/
29 $pagecount = ceil($amount/$pagesize);//总页数=总数量除以每页数量 如果有小树,则进位
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>|'.($page-1).'>上一页|';
42 }
43 if($page==$pagecount||$pagecount==0){//如果当前页等于总也数
44 $pageout .= '下一页|尾页';
45 }
46 else{
47 $pageout .= ''.($page+1).'>下一页|'.$pagecount.'>尾页';
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 = $blog[bid]>删除.
59 $blog[bid]>编辑.
60 $blog[bid]>查看;
61 include(template/default/blog.tpl.php);
62 echo $pageout;
63 }
64 for($i=1;$i$pagecount;$i++){//数字分页
65 $pageshow = ($i!=$page)?.$i.'>$i:$i;
66 echo $pageshow;
67 }
68 echo $amount.'条记录,每页'.$pagesize.'条,共'.$pagecount.'页';
69 }