标签分类 技术文章:
当前位置:首页 > PHP编程文章 > php原生数据库分页的代码实例

php原生数据库分页的实现过程

  • 发布时间:
  • 作者:码农之家原创
  • 点击:75

这篇文章主要知识点是关于php、数据库分页、PHP查询分页的实现代码 的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Modern PHP
Modern PHP原版中文扫描版
  • 类型:PHP大小:28 MB格式:PDF出版:中国电力出版社作者:乔希
立即下载

更多PHP相关的学习资源可以参阅 PHP电子书程序设计电子书 等栏目。

php原生数据库分页的代码实例

 php原生数据库分页的代码如下:

<?php
header("Content-type:text/html;charset=utf-8");
// 连接数据库
$con = mysql_connect("数据库地址","数据库账号","数据库密码");
if (!$con){die('Could not connect: ' . mysql_error());}
 
mysql_select_db("数据库名", $con);
 
// 每页显示条数
$pageLine = 5;
 
// 计算总记录数
$ZongPage = mysql_query("select count(*) from 表名");
 
// 计算总页数
$sum = mysql_fetch_row($ZongPage);
$pageCount = ceil($sum[0]/$pageLine);  
 
// 定义页码变量
@$tmp = $_GET['page'];
 
 
// 计算分页起始值
$num = ($tmp - 1) * $pageLine;
 
// 查询语句
$result = mysql_query("SELECT 字段 FROM 表名 ORDER BY id DESC LIMIT " . $num . ",$pageLine");
 
// 遍历输出
while($row = mysql_fetch_array($result))
 {
   echo $row['字段'];
   echo "<br/>";
 }
 
//分页按钮
//上一页
$lastpage = $tmp-1;
//下一页
$nextpage = $tmp+1;
 
//防止翻过界
if (@$tmp > $pageCount) {
  echo "没有那么多页啦,请返回";
}
 
//如果页码大于总页数,则显示没有了
if(@$tmp <= 1){
  echo "<a href=\"fenye.php?page=$nextpage\">下一页</a>";
}else if(@$tmp > 1 && @$tmp < $pageCount){
  echo "<a href=\"fenye.php?page=$lastpage\">上一页</a>";
  echo "<a href=\"fenye.php?page=$nextpage\">下一页</a>";
}else if(@$tmp = $pageCount){
  echo "<a href=\"fenye.php?page=$lastpage\">上一页</a>";
}
 
// 关闭数据库连接
mysql_close($con);
?>

mysql这个连接库应该已经很少人用了,但是大家可以学习其中的写法和原理,感谢大家的学习和对码农之家的支持。

PHP查询分页的实现代码

本文实例为大家分享了PHP查询分页的具体代码,后端基于thinkphp框架,供大家参考,具体内容如下 

前端需要dataTables插件:传送门下载地址 

HTML代码 

第一步引入插件

<!-- DataTables CSS -->
<link rel="stylesheet" type="text/css" href="http://cdn.datatables.net/1.10.15/css/jquery.dataTables.css" rel="external nofollow" >
<!-- jQuery -->
<script type="text/javascript" charset="utf8" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<!-- DataTables -->
<script type="text/javascript" charset="utf8" src="http://cdn.datatables.net/1.10.15/js/jquery.dataTables.js"></script>

第二步添加 

<table id="table_id_example" class="display">
 <thead>
 <tr>
  <th>ID</th>
  <th>发布时间</th>
  <th>发布IP</th>
  <th>公告内容</th>
 </tr>
 </thead>
 <tbody>
  <volist name="notice" id="vo">
   <tr>
   <td>{$vo.id}</td>
   <td>{$vo.create_time}</td>
   <td>{$vo.create_ip}</td>
   <td>{$vo.notice_content}</td>
   </tr>
  </volist>
 </tbody>
</table> 

第三步JS

 <script>
 $(document).ready( function () {
  $('#table_id_example').DataTable();
 } );
 </script>

PHP代码

 public function gonggaochakan(){
 /* 公告查看
  */
 $dbNotice = M('notice');//实例化dbNotice对象
 $count  = $dbNotice->count();// 查询满足要求的总记录数
 $Page  = new \Think\Page($count,$count);// 实例化分页类 传入总记录数和每页显示的记录数(全部记录)
 $data = $dbNotice->order('create_time')->limit($Page->firstRow.','.$Page->listRows)->select();//获得所有记录
 $this->assign('notice',$data);//传给模板
 $this->show();
} 

​效果

PHP查询分页的实现代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

以上就是本次给大家分享的关于PHP的全部知识点内容总结,大家还可以在下方相关文章里找到PHP用户验证和标签推荐的、 PHP中的日期时间处理利器、 ThinkPHP的模板引擎如何达到、 等php文章进一步学习,感谢大家的阅读和支持。

上一篇:Laravel实现表单提交的实例代码详解

下一篇:PHP中excel的导出和下载实例代码

展开 +

收起 -

学习笔记
网友NO.264575

万能的php分页类

本文实例为大家分享了php分页类的具体代码,供大家参考,具体内容如下 ?php/*核心:首页、上一页、下一页、尾页的url*//*超全局$_SERVER*/$page = new Page(5,60);var_dump($page-allUrl());class Page{// 每页显示的个数 protected $number;// 一共有多少数据 protected $totalCount;// 当前页 protected $page;// url protected $url; public function __construct($number,$totalCount){ $this-number= $number; $this-totalCount = $totalCount; //得到总页数 $this-totalPage = $this-getTotalPage(); //得到当前页数 $this-page = $this-getPage(); //得到URL $this-url = $this-getUrl(); echo $this-url; } /*得到总页数并向上取整*/ protected function getTotalPage(){ return ceil($this-totalCount/$this-number); } /**/ protected function getPage(){ if (empty($_GET['page'])){ $page=1; }elseif ($_GET['page'] $this-totalPage){ $page = $this-totalPage; }elseif ($_GET["page"]1){ $page = 1; }else{ $page = $_GET['page']; } return $page; } protected function getUrl(){ //得到协议名 $scheme = $_SERVER['REQUEST_SCHEME']; //得到主机名 $host= $_SERVER['SERVER_NAME']; //得到端口号 $port = $_SERVER['SERVER_PORT']; //得到路径和请求字符串 $url = $_SERVER['REQUEST_URI']; /*中间做处理,要将page=5等这种字符串拼接URL 中,所以如果原来的url中有page这个参数,我们首先 需要将原来的page参数给清空*/ $urlArray = parse_url($url);// var_dump($urlArray); $path = $urlArray['path']; if (!empty($url……

网友NO.600701

thinkPHP3.2实现分页自定义样式的方法

本文实例讲述了thinkPHP3.2实现分页自定义样式的方法。分享给大家供大家参考,具体如下: 下面是一个Tp3.2的自定义分页,这个方法也是在看过一个网友的博客之后受到启发这么写的。经过了一些修改,大家在看到代码之后也可以进行修改自定义样式; 主要的样式控制文件就是page.css,框架底层的分页类可以直接进行粘贴复制使用; 1. 框架底层的page.class.php 路径( Engine\Library\Think) 其实这个文件不需要过多修改,也可以直接使用官方的就行;下面是我现在用的,稍作了修改; ?phpnamespace Think;class Page{ public $firstRow; // 起始行数 public $listRows; // 列表每页显示行数 public $parameter; // 分页跳转时要带的参数 public $totalRows; // 总行数 public $totalPages; // 分页总页面数 public $rollPage = 11;// 分页栏每页显示的页数 public $lastSuffix = true; // 最后一页是否显示总页数 private $p = 'p'; //分页参数名 private $url = ''; //当前链接URL private $nowPage = 1; // 分页显示定制 private $config = array( 'header' = 'span class="rows"共 %TOTAL_ROW% 条记录/span', 'prev' = '', 'next' = '', 'first' = '1...', 'last' = '...%TOTAL_PAGE%', 'theme' = '%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%', ); /** * 架构函数 * @param array $totalRows 总的记录数 * @param array $listRows 每页显示记录数 * @param array $parameter 分页跳转的参数 */ public fu……

网友NO.557058

php封装的page分页类完整实例

本文实例讲述了php封装的page分页类。分享给大家供大家参考,具体如下: 类文件: ?php //分页工具类 class Page{ /* * 获取分页字符串 * @param1 string $uri,分页要请求的脚本url * @param3 int $counts,总记录数 * @param4 int $length,每页显示的记录数 * @param5 int $page = 1,当前页码 * @return string,带有a标签的,可以点击发起请求的字符串 */ public static function getPageStr($uri,$counts,$length,$page = 1){ //构造一个能够点击的字符串 //得到数据显示的字符串 $pagecount = ceil($counts/$length); //总页数 $str_info = "当前一共有{$counts}条记录,每页显示{$length}条记录,一共{$pagecount}页,当前是第{$page}页"; //生成可以操作的连接:首页 上一页 下一页 末页 //求出上一页和下一页页码 $prev = ($page = 1) ? 1 : $page - 1; $next = ($page = $pagecount) ? $pagecount : $page + 1; $str_click = END a href="{$uri}?page=1"首页/a a href="{$uri}?page={$prev}"上一页/a a href="{$uri}?page={$next}"下一页/a a href="{$uri}?page={$pagecount}"末页/aEND; //按照页码分页字符串 $str_number = ''; for($i = 1;$i = $pagecount;$i++){ $str_number .= "a href='{$uri}?page={$i}'{$i}/a"; } //下拉框分页字符串:利用js的onchang事件来改变当前脚本的href $str_select = "select onchange=\"location.href='{$uri}?page='+this.value\""; //将所有的页码放入到option for($i = 1;$i = $pagecount;$i++){ if($i == $page) $str_se……

网友NO.754702

thinkPHP基于ajax实现的菜单与分页示例

本文实例讲述了thinkPHP基于ajax实现菜单与分页的方法。分享给大家供大家参考,具体如下: 一个分类菜单,使用ajax实现: function getid(id){$.ajax({ url: "{:U('/Index/example')}", type: "POST", data: {id:id} }).success(function(data) { $("#centent").html(data); });} 并使用ajax分页,这个是网上某位写的: script type="text/javascript"!--$("#page_show a").click(function() { $('#centent').append('span id="lod"加载中../span'); //获取url var _HREF = $(this).attr('href'); //加载页面 $("#centent").load(_HREF, '', function() { $("#lod").remove(); }); return false;});//--/script 之前使用post实现的菜单内容,没有什么问题 $.post(url, function(data) { $('.centent').html(data);}); 但是使用ajax实现时,不能得到正确结果。分页不能完成。 最后思考之下,将 type: "POST",改为 type: "GET", 问题解决。post方式也是以POST提交的,ajax开始也是以POST提交,为什么却不行呢?最后发现还是url的原因,两处url不一样。 更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《ThinkPHP常用方法总结》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《PHP中cookie用法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。 希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。 ……

<
1
>

Copyright 2018-2019 xz577.com 码农之家

版权责任说明