zoukankan      html  css  js  c++  java
  • php分页

     

    <!--?php

            require_once 'include/showbbsProcess.php';

            require_once 'include/showbbs_fun.php';    

            @$connectmysql=new connectMysql();

             

            if (empty($_GET['CurrentPageID'])){

                $CurrentPageID=1;//当前是第几页

            }else {

                $CurrentPageID=$_GET['CurrentPageID'];

            }

             

            $PageSize=5;

            echo showCenter($CurrentPageID, $PageSize, $connectmysql);

            ?-->


    分页处理函数 showbbsProcess.php

    ?

    <!--?php

    function showCenter($CurrentPageID,$PageSize=5,$connectmysql){

        $arr=showbbs($PageSize, $CurrentPageID, $connectmysql);

        foreach ($arr as $values){

            for ($i=0;$i<count($arr);$i++){

                echo ''.$arr[$i]['title'].''.' '.'<span style="float:right;font-size:12px;">作者:'.$arr[$i]['poster'].' '.'发布时间:'.$arr[$i]['posted'].'</span><br><hr>';

                //如果遍历完$arr数组里的所以元素,即$i($i从0开始)等于数组的元素个数减一,则跳出2层循环(for循环和foreach循环)

                if ($i==(count($arr)-1))

                    break 2;

            }

        }

         

        $RowCount=getRowCount($connectmysql);//一共有多少条记录

         

        $PageCount=ceil($RowCount/$PageSize);//共有几页,ceil()函数进一取整

         

        echo '帖子统计:'.$RowCount.'条'.' '.'共有'.$PageCount.'页 ';

         

        //当为第一页时不输出“上一页”

        if ($CurrentPageID != 1){

            echo "上一页";

        }

         

        //向前跳页

        if ($CurrentPageID > 2){

            echo " <<< ";

        }

         

        //输出详细的页数,如:【1】

        for ($j=1;$j<=$PageCount;$j++){

            echo "[$j]";

        }

         

        //向后跳页

        if ($CurrentPageID <= ($PageCount-2)){

            echo " >>> ";

        }

         

        //当为最后一页时不输出“下一页”

        if ($CurrentPageID != $PageCount){

            echo "下一页";

        }

         

        $connectmysql->closeConn();

    }


    数据库沟通的函数 showbbs_fun.php

    ?

    <!--?php

     

    require_once '/class/connectMysql.php';

     

     

     

    //该函数用来获取数据库中的数据并返回一个二维数组

     

    function showbbs($PageSize,$CurrentPageID,$connectmysql){

     

        $a=($CurrentPageID - 1)*$PageSize;

     

        $sql="select * from db_content limit $a,$PageSize";

     

        $arr1=$connectmysql->getRowsArray($sql);

     

        return $arr1;

     

    }

     

     

     

    //该函数用来查询数据库的表的行数

     

    function getRowCount($connectmysql){

     

        $sql="select * from db_content";

     

        $num=$connectmysql->getRowsNum($sql);

     

        return $num;

     

    }

     


    数据库类 connectMysql.php

    ?

     

    <!--?php

    /***

     * 这个类用于处理数据库连接相关操作

     */

    class connectMysql{

        private $host='localhost';

        private $username='root';

        private $password='szy19900316';

        private $dbname='db_caomei';

        private $conn='';//数据库连接资源

        private $result='';//查询的结果

        private $resultArray;//将查询的结果输出为一个单条记录的数组

        private $rowsArray=array();//含有多条记录的二维数组

        private $rowsNum=0;//返回的结果数

         

        function __construct(){

        }

         

        //连接数据库

        function conndb(){

            $this--->conn=mysql_connect($this->host,$this->username,$this->password);

            @mysql_select_db($this->dbname,$this->conn);

            mysql_query('set names utf-8');

        }

         

        //查询结果

        function getResult($sql){

            if ($this->conn==''){

                $this->conndb();

            }

            $this->result=mysql_query($sql,$this->conn);

        }

         

        //返回查询的记录数

        function getRowsNum($sql){

            $this->getResult($sql);

            $num_rows=mysql_num_rows($this->result);

            if (mysql_errno()==0){

                return $num_rows;

            }else {

                return '';

            }

        }

         

        //将结果输出为一个单条记录数组并返回

        function getArray($sql){

            $this->getResult($sql);

            if (mysql_errno()==0){

                $this->resultArray=mysql_fetch_array($this->result,MYSQL_ASSOC);//得到关联数组

                return $this->resultArray;

            }else {

                return '';

            }

        }

         

        //返回一个含有多条记录的二维数组

        function getRowsArray($sql){

            $this->getResult($sql);

            if (mysql_errno()==0){

                while ($row=mysql_fetch_array($this->result,MYSQL_ASSOC)){

                    $this->rowsArray[]=$row;

                }

                return $this->rowsArray;

                //print_r($this->rowsArray);exit;

            }else {

                return '';

            }

        }

     

        //更新、添加、删除

        function uidresult($sql){

            if ($this->conn==''){

                $this->conndb();

            }

            //echo $sql;

            //exit;

            @mysql_query($sql);

            $this->rowsNum=@mysql_affected_rows();

            if (mysql_errno()==0){

                return $this->rowsNum;

            }else {

                return '';

            }

        }

         

        //释放结果集

        function freeResult(){

            mysql_free_result($this->result);

            $this->rowsNum=0;

            $this->rowsArray='';

            $this->resultArray='';

        }

         

        //关闭数据库

        function closeConn(){

            $this->freeResult();

            mysql_close($this->conn);

            $this->conn='';

        }

    }

    人如代码,规矩灵活;代码如诗,字句精伦。
  • 相关阅读:
    谈谈服务限流算法的几种实现
    使用 MongoDB 存储日志数据
    MongoDB存储引擎选择
    下载一线视频
    spring-boot-starter-redis配置详解
    SpringBoot学习笔记(6) SpringBoot数据缓存Cache [Guava和Redis实现]
    Guava 源码分析(Cache 原理)
    分布式链路跟踪 Sleuth 与 Zipkin【Finchley 版】
    Dubbo x Cloud Native 服务架构长文总结(很全)
    区块链使用Java,以太坊 Ethereum, web3j, Spring Boot
  • 原文地址:https://www.cnblogs.com/xinlinux/p/3760323.html
Copyright © 2011-2022 走看看