温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在PHP中实现一个分页功能

发布时间:2020-12-16 15:26:08 来源:亿速云 阅读:137 作者:Leah 栏目:开发技术

如何在PHP中实现一个分页功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项。

要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7。PHP分页代码核心就是围绕这条语句展开的,SQL语句说明:查询goods数据表从第2条数据开始取出7条数据。在分页代码中,7表示每页显示多少条内容,2通过公式计算表示翻页数,通过传入不同参数替换“2”的值,即可筛选出不同的数据。

index.php:

include 'conn.php';  //引入数据库操作类 
 
$conn=new conn();  //实例化数据库操作类 
 
$total=$conn->getOne('select count(*) as total from goods'); 
$total=$total['total']; //goods表数据总数据条数 
$num=6; //每页显示条数 
$totalpage=ceil($total/$num);  //计算页数 
if(isset($_GET['page']) && $_GET['page']<=$totalpage){//这里做了一个判断,若get到数据并且该数据小于总页数情况下才付给当前页参数,否则跳转到第一页 
  $thispage=$_GET['page']; 
}else{ 
  $thispage=1; 
} 
<BR>//注意下面sql语句中红色部分,通过计算来确定从第几条数据开始取出,当前页数减去1后再乘以每页显示数据条数 
$sql='select goods_id,goods_name,shop_price from goods order by goods_id limit '.<SPAN >($thispage-1)*$num</SPAN>.','.$num.''; 
 
$data=$conn->getAll($sql); 
 
foreach($data as $k=>$v){ 
  echo '<li>'.$v['goods_id'].'、'.$v['goods_name'].'---¥'.$v['shop_price'].'</li>';   
} 
<BR>//显示分页数字列表 
for($i=1;$i<=$totalpage;$i++){ 
  echo '<a href="?page='.$i.'">'.$i.'</a> ';  
   
}

上述代码实现了一个最简单的PHP分页效果:

如何在PHP中实现一个分页功能

仅实现点击翻页数字显示不同的翻页数据,可以在此基础上进一步完善,只要基础原理理解后,后续工作就比较容易开发了。

conn.php代码:

/* 
*连接数据库 进行相关查询操作 
*/
 
class conn{ 
 
  public function __construct(){ 
    include_once('config.php'); 
    try{   
      $this->pdo = new PDO('mysql:host=localhost;dbname=test', 'root', '123456'); 
      $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
      $this->pdo->exec('set names utf8'); 
       
 
    }catch(PDOException $e){ 
      echo '数据库连接失败:'.$e->getMessage(); 
      exit(); 
    } 
  } 
   
  //获取一行数据 
  public function getOne($sql){ 
    $rs=$this->pdo->query($sql)->fetch(PDO::FETCH_ASSOC); 
     
    return $rs; 
  } 
   
  //获取多行数据结果 
  public function getAll($sql){ 
    $rs=$this->pdo->query($sql)->fetchall(PDO::FETCH_ASSOC); 
     
    return $rs; 
 
  } 
}

conn.php功能是完成数据库连接,并实现取出数据操作方法,这里我使用的是pdo,这里可以根据大家习惯来组织代码。

config.php:

* 
*配置数据库信息 
*/
 
$cfg_dbhost='localhost'; 
$cfg_dbname='test'; 
$cfg_dbuser='root'; 
$cfg_dbpw='123456';

看完上述内容,你们掌握如何在PHP中实现一个分页功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php
AI