PHP分页初探 一个最简单的PHP分页代码的简单实现


Posted in PHP onJune 21, 2016

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 style="COLOR: #ff0000">($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分页初探 一个最简单的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分页初探 一个最简单的PHP分页代码的简单实现的全部内容了,希望大家喜欢哦~

如果大家想了解更多游戏活动与游戏攻略,请持续关注本站,本站小编将在第一时间为大家带来最好看、最好玩、最新鲜的游戏资讯。更多精彩内容,尽在jb51游戏频道!

PHP 相关文章推荐
[转帖]PHP世纪万年历
Dec 06 PHP
php下使用SMTP发邮件的代码
Jan 10 PHP
php strlen mb_strlen计算中英文混排字符串长度
Jul 10 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
Jan 04 PHP
php实现读取和写入tab分割的文件
Jun 01 PHP
laravel学习教程之存取器
Jul 30 PHP
PHP中串行化用法示例
Nov 16 PHP
php实现保存周期为1天的购物车类
Jul 07 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
Feb 11 PHP
php fread函数使用方法总结
May 28 PHP
PHP文件操作简单介绍及函数汇总
Dec 11 PHP
Docker 如何布置PHP开发环境
Jun 21 #PHP
Yii2使用自带的UploadedFile实现的文件上传
Jun 20 #PHP
Yii2组件之多图上传插件FileInput的详细使用教程
Jun 20 #PHP
PHP开发制作一个简单的活动日程表Calendar
Jun 20 #PHP
php中的登陆login实例代码
Jun 20 #PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 #PHP
php打乱数组二维数组多维数组的简单实例
Jun 17 #PHP
You might like
PHP 程序员也要学会使用“异常”
2009/06/16 PHP
PHP中使用array函数新建一个数组
2015/11/19 PHP
php简单统计中文个数的方法
2016/09/30 PHP
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
使用js实现的简单拖拽效果
2015/03/18 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
2016/04/01 Javascript
jQuery EasyUI框架中的Datagrid数据表格组件结构详解
2016/06/09 Javascript
AngularJS控制器详解及示例代码
2016/08/16 Javascript
jQuery实现二维码扫描功能
2017/01/09 Javascript
深入理解vue中的$set
2017/06/01 Javascript
vue-quill-editor富文本编辑器简单使用方法
2018/09/21 Javascript
webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程
2019/06/10 Javascript
微信小程序页面调用自定义组件内的事件详解
2019/09/12 Javascript
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
js实现列表向上无限滚动
2020/01/13 Javascript
react实现复选框全选和反选组件效果
2020/08/25 Javascript
ES5和ES6中类的区别总结
2020/12/21 Javascript
[03:55]DOTA2完美大师赛选手传记——LFY.MONET
2017/11/18 DOTA
[44:37]完美世界DOTA2联赛PWL S3 Forest vs access 第一场 12.11
2020/12/13 DOTA
使用python实现http及ftp服务进行数据传输的方法
2018/10/26 Python
在win10和linux上分别安装Python虚拟环境的方法步骤
2019/05/09 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
pytorch torch.expand和torch.repeat的区别详解
2019/11/05 Python
使用darknet框架的imagenet数据分类预训练操作
2020/07/07 Python
关于PySnooper 永远不要使用print进行调试的问题
2021/03/04 Python
请用用Java代码写一个堆栈
2012/01/26 面试题
12月小学生校园广播稿
2014/02/04 职场文书
大学生见习报告范文
2014/11/03 职场文书
2015年全民国防教育日活动总结
2015/03/23 职场文书
安全员岗位职责范本
2015/04/11 职场文书
2015初中团委工作总结
2015/07/28 职场文书
小学四年级班主任工作经验交流材料
2015/11/02 职场文书
分析设计模式之模板方法Java实现
2021/06/23 Java/Android
Vue如何清空对象
2022/03/03 Vue.js
Python+Tkinter制作专属图形化界面
2022/04/01 Python