php 分页操作(二)

在php 分页操作(一)中,我们没有对信息进行分页,改进如下——>首先我们先看一下分页效果图


我们可以再看一个关于分页的例子,如下图


当有大量信息需要展示的时候,在同一个页面不可能全部显示,这个时候就需要对信息进行分页。在分页的时候,我们需要知道哪些信息呢?

思路:需要知道总页数(pageCount)、当前页数(pageNow可以由编程人员自己定义)、总共有多少条信息(rowCount需要使用sql语句获取)、每页显示的信息数(pageSize可以由编程人员自己定义)。

下面,我们需要知道共有多少页,这里我们可以使用一个函数ceil函数,总页数=ceil(信息总数【rowCount】 每页显示信息数【pageSize】)

代码块:

<?php

    $conn=mysql_connect("localhost","用户名","密码") or die(mysql_error); 

//链接数据库,如果链接出错,显示错误信息

mysql_query("set names utf8");

//设置编码格式

 

mysql_select_db("shop",$conn);

//选择数据库

    

$pageSize=5;   //每页显示信息量

$rowCount=0;    //信息总量

$pageNow=2;    //当前页数

$pageCount=0;   //总页数

if(!empty($_GET['pageNow'])){

      $pageNow=$_GET['pageNow'];

  }

 

$sql="select count(id) from emp";  //根据id获得数据总量

$res1=mysql_query($sql);

if($row=mysql_fetch_row($res1)){

   $rowCount=$row[0];

}

    $pageCount=ceil($rowCount/$pageSize);

$sql="select * from emp limit ".($pageNow-1)*$pageSize.",$pageSize";

//sql语句

$res=mysql_query($sql,$conn);

echo "<table border='1' width='700px'>";

    echo "<tr>";

    echo "<td>员工id</td><td>员工姓名</td><td>员工等级</td><td>员工邮箱</td><td>员工薪水</td></tr>";

    while($row=mysql_fetch_assoc($res)){

      echo "<tr>";

      echo "<td>" .$row['id']."</td><td>" .$row['name']."</td><td>" .$row['grade']."</td>

     <td>" .$row['emil']."</td><td>" .$row['salary']."</td>";

      echo "</tr>";

     } 

     echo "</table>";

 if($pageNow>1){

      $prepage=$pageNow-1;

      echo "<a href='fenye.php?pageNow=$prepage'>上一页  </a>";

     }

      for($i=1;$i<=$pageCount;$i++){

      echo "<a href='fenye.php?pageNow=$i'>$i  </a>";

     }

      if($pageNow<$pageCount){

      $nextpage=$pageNow+1;

      echo "<a href='fenye.php?pageNow=$nextpage'>下一页  </a>";

     }

 mysql_free_result($res);   //释放资源

 mysql_close($conn);       //关闭连接

?>




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值