服务器之家

服务器之家 > 正文

用php制作简单分页(从数据库读取记录)的方法详解

时间:2020-03-23 13:40     来源/作者:PHP教程网

      PHP新手,一直想做一下分页都给忘了,今天有幸被提醒所以网上搜了一下。有些写的看不懂也没怎么去看。最后找到一个比较简单的。

  大致的思想就是:

  1.设置每页要显示的最大记录数。

  2.计算出页面总数

  3.当前页面跟总页面数比较改变连接的状态

  4.用limit控制从数据库中读取记录

下面是代码:

复制代码 代码如下:

$conn = mysql_connect('localhost','root','');
            mysql_select_db('db_BookStore',$conn);
            mysql_query("set names utf8");
            if(isset($_GET['page']))                   //判断是否存在page参数,获得页面值,否则取1
            {
                $page = intval($_GET['page']);
            }
            else
            {
                $page = 1;
            }
            $page_size = 2; //最大记录条数
            $sql = "SELECT count(*) as amount FROM tb_BookInfo";
            $result = mysql_query($sql);
            $row = mysql_fetch_array($result);
            //计算总页数
            $amount = $row['amount'];
            if($amount)
            {
                if($amount < $page_size){$page_count = 1;}
                if($amount % $page_size){$page_count = (int)($amount / $page_size) + 1; }
                else{$page_count = $amount / $page_size;}
            }
            else
            {
                $page_count = 0;
            }
            //翻页链接
            $page_string = "";
            if($page == 1)
            {
                $page_string .= "首页 | 上一页";
            }
            else
            {
                $page_string .= "<a href='?page=1'>首页</a> | <a href='?page=".($page-1)."'>上一页</a>";
            }
            $page_string .= "| $page |";
            if($page == $page_count)
            {
                $page_string .= "下一页 | 尾页";
            }
            else
            {
                $page_string .= "<a href='?page=".($page+1)."'>下一页</a> | <a href='?page=$page_count'>尾页</a>";
            }
          $sql = "select * from table order by id desc limit ". ($page-1)*$page_size .", $page_size";
          $result = mysql_query($sql);
       while ( $row = mysql_fetch_row($result) ){
         $rowset[] = $row;
       }
?>


这个只是非常简单的一种方法,各位路人大牛,若有其他类型的方法,敬请告之一下。

 

标签:

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部