zoukankan      html  css  js  c++  java
  • 制作分页、页码

    一、分页制作

      1.设置页大小(即在一页内显示多少条数据)

      2.计算记录总数(共有多少条数据)

      3.计算页总数(共需多少页来显示所有数据)

      4.获取当前页码

      5.过滤越界

      6.组装sql语句

      7.准备sql语句

      8.发送sql语句

      9.添加分页的超链接

    //1.设置页大小(即在一页内显示多少条数据)
    $page_size=#;
    //2.计算记录总数(共有多少条数据)
    $sql="select count(*) from table_name";
    $res=mysql_query($sql);
    $data=mysql_fetch_assoc($res);
    mysql_free_result($res);
    $count=$data['count(*)'];
    if($count==0){
        //当无数据时
        $page_count=1;
        $page_num=1;
        $limit="";
    }else{
        //3.计算页总数(共需多少页来显示所有数据)
        $page_count=ceil($count/$page_size);  //进一法取整
        //4.获取当前页码
        $page_num=empty($_GET['page'])?1:$_GET['page'];
        //5.过滤越界
        if($page_num<1){
            $page_num=1;
        }elseif($page_num>$page_count){
            $page_num=$page_count;
        }
        //6.组装sql语句
        $limit=" limit ".($page_num-1)*$page_size.",".$page_size;
    }
    //7.准备sql语句
    $sql="select * from table_name order by id".$limit;
    //8.发送sql语句
    $res=mysql_query($sql);
    //9.添加分页的超链接      
    ?>
    
    <a href="?page=1">首页</a>
    <a href="?page=<?php echo ($page_num-1);?>">上一页</a>
    <a href="?page=<?php echo ($page_num+1);?>">下一页</a>
    <a href="?page=<?php echo ($page_count);?>">尾页</a>
    当前第<?php echo $page_num;?>页
    共<?php echo $page_count;?>页
    本页有<?php
        if($count==0){
            echo $count;
        }else{
            echo ($page_num!=$page_count || $count%$page_size==0)?$page_size:($count%$page_size);
        }
    ?>条数据
    共<?php echo $count;?>条数据

    二、页码制作

    例1:

      显示5页的页码

      

    if($page_count<=5){
        for($i=1;$i<=$page_count;$i++){
            echo "<a href='?page=".$i."'>".$i."</a>";
        }
    }else{
        if($page_num<=3){
            for($i=1;$i<=5;$i++){
                echo "<a href='?page=".$i."'>".$i."</a>";
            }
        }else{
            if($page_num+2<=$page_count){
                for($i=($page_num-2);$i<=($page_num+2);$i++){
                    echo "<a href='?page=".$i."'>".$i."</a>";
                }
            }else{
                for($i=($page_count-4);$i<=$page_count;$i++){
                    echo "<a href='?page=".$i."'>".$i."</a>";
                }
            }
        }
    }
    
    //要使页码中的当前页颜色突出,在echo时加判断
    if($i==$page_num){
        echo "<a style='color:red;' href='?page=".$i."'>".$i."</a>";
    }else{
        echo "<a href='?page=".$i."'>".$i."</a>";
    }

    例2:

      显示10页的页码

      

    if($page_count<=10){
        for($i=1;$i<=$page_count;$i++){
            echo "<a href='?page=".$i."'>".$i."</a>";
        }
    }else{
        if($page_num<=6){
            for($i=1;$i<=10;$i++){
                echo "<a href='?page=".$i."'>".$i."</a>";
            }
        }else{
            if(($page_num+4)<=$page_count){
                for($i=($page_num-5);$i<=($page_num+4);$i++){
                    echo "<a href='?page=".$i."'>".$i."</a>";
                }
            }else{
                for($i=($page_count-9);$i<=$page_count;$i++){
                    echo "<a href='?page=".$i."'>".$i."</a>";
                }
            }
        }
    }
  • 相关阅读:
    HTML5
    PHP
    eclipse项目导入到android studio
    Jpush教材
    Android性能优化典范
    Fresco好案例
    扫二维码关注微信号,回复“送礼包”就送超值大礼!
    Android开源项目大全之工具库
    android学习“知乎”建议
    C# Json时间类型的转换
  • 原文地址:https://www.cnblogs.com/zhouwanqiu/p/9178731.html
Copyright © 2011-2022 走看看