php分页代码及总结

代码部分:

<?PHP
header("Content-type:text/html;charset=utf-8");
$pageSize = 10;
//接收传入的分页码
$page = $_GET[‘p‘];
//获取分页数据
$host = "localhost";
$username = "root";
$password = "";
$db = "lian";
$conn = mysql_connect($host,$username,$password);
if(!$conn){
  echo "连接错误";
  exit;
}
mysql_select_db($db);
mysql_query("SET NAMES UTF8");
$sql= "select * from page LIMIT ".(($page-1)*$pageSize).",".$pageSize; 
$result = mysql_query($sql);
echo "<table border=1 cellspacing=0 width=40%>";
echo "<tr><td>id</td><td>name</td></tr>";
while($row = mysql_fetch_assoc($result)){
echo "<tr>";
echo "<td>".$row[‘id‘]."</td>";
echo "<td>".$row[‘name‘]."</td>";
echo "</tr>";
}
echo "</table>";
mysql_free_result($result);
$total_sql = "SELECT COUNT(*) FROM page";
$total_result = mysql_fetch_array(mysql_query($total_sql));
$total = $total_result[0];
$total_pages = ceil($total/$pageSize);
$showPage = 7;
$pageOffset = ($showPage-1)/2;
$start = 1;
$end = $total_pages;
mysql_close($conn);
//显示数据和分页
$page_banner = "";
if($page > 1){
$page_banner = "<a href=‘".$_SERVER[‘PHP_SELF‘]."?p=1‘>首页</a>";
$page_banner .= "<a href=‘".$_SERVER[‘PHP_SELF‘]."?p=".($page-1)."‘>上一页</a>";
}
if($total_pages > $page){
  if($page > ($pageOffset+1)&&$page < ($total_pages-2)){
    $start = $page - $pageOffset;
    $end = $page + $pageOffset;
  }else if($page <= ($pageOffset+1)){
    $start = 1;
    $end = 7;
  }else{
    $start = $total_pages-6;
    $end = $total_pages;
  }
}else{
    $start = 1;
    $end = $total_pages;
}

for($i = $start;$i<=$end;$i++){
  if($page == $i){
    $page_banner .= "<span style=‘color:red‘>".$i."</span>";
  }else{
    $page_banner .= "<a href=‘".$_SERVER[‘PHP_SELF‘]."?p=".$i."‘>".$i."</a>";
  }
}

if($page < $total_pages){
$page_banner .= "<a href=‘".$_SERVER[‘PHP_SELF‘]."?p=".($page+1)."‘>下一页</a>";
$page_banner .= "<a href=‘".$_SERVER[‘PHP_SELF‘]."?p=".($total_pages)."‘>尾页</a>";
}
$page_banner .="共有".$total_pages."页";
$page_banner .="<form action=‘page.php‘ method=‘get‘>";
$page_banner .="到第<input type=‘text‘ name=‘p‘ size=‘2‘>页去";
$page_banner .="<input type=‘submit‘ value=‘确定‘>";
$page_banner .="</form>";
echo $page_banner;
?>

总结部分:

1,接收传入的显示页面指令参数($page)

2,连接数据库利用sql语句从数据库取出数据,主要是select * from 表名 limit 开始位置,每页显示的条数
其中要注意limit后一定要放一个空格
3,从数据库查出总条数,ceil()函数操作总条数/每页显示的条数计算出总页数,其中ceil()是向上取整
4,前一页是$page-1,后一页是$page+1,首页是1,尾页是总页数
5,跳转到哪一页用一个表单传参即可
6,最重要的是显示页码,根据一个页面中显示几个页码、偏移量、总页数和一个页面中显示的页码数比较从而确定
页面中显示的第一个页码和最后一个页码,遍历输出所有要显示的页码。

时间: 2024-08-29 14:59:14

php分页代码及总结的相关文章

javascript实现的分页代码实例

javascript实现的分页代码实例: 下面是一段javascript实现的分页代码,当然必须要结合后台代码实现.大家可以自行分析一下代码,希望能够给大家带来一定的帮助,代码如下: <script type="text/javascript"> function setPage(opt) { if(!opt.pageDivId || opt.allPageNum < opt.curpageNum || opt.allPageNum < opt.showPage

无刷新分页代码,jQuery分页完整示例

<!DOCTYPE html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>jQuery分页演示效果</title><script type="text/javascript" src="/ajaxjs/jquery1.3.2.js">&l

php分页函数示例代码,php分页代码实现方法

php分页函数示例代码 分享一例php分页函数代码,用此函数实现分页代码很不错. 代码,php分页函数. <?php /* * Created on 2011-07-28 * Author : LKK , http://lianq.net * 使用方法: require_once('mypage.php'); $result=mysql_query("select * from mytable", $myconn); $total=mysql_num_rows($result);

转载:分页原理+分页代码+分页类制作

分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一.对于web编程的老手来说,编写这种代码实在是和呼吸一样自然,但是对于初学者来说,常常对这个问题摸不着头绪,因此特地撰写此文对这个问题进行详细的讲解. 一.分页原理:       所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示,这里需要两个初始的参数: 每页多少条记录($PageSize)?       当前是第几页($CurrentPageID)? 现在只要再给我一个结果集,我就可以显示某段特

内容页分页代码

在使用Thinkphp开发的内容管理系统里面,很多东西都要自己开发,内容分页当然也是要自己开发的,下面是我根据查资料自己整理的方法: 1.首先是在后台编辑内容的时候需要插入分页符,不同的编辑器分页符自然也不同了 2.然后就是读取文章内容的时候,要根据分页符来把内容分割成多个数组然,这里需要传值当前是第几页,根据页数来读取分割后的数组 代码如下: <php>     $arr_con=explode('_ueditor_page_break_tag_',$dy['art_content']);/

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

PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核心就是围绕这条语句展开的,SQL语句说明:查询goods数据表从第2条数据开始取出7条数据.在分页代码中,7表示每页显示多少条内容,2通过公式计算表示翻页数,通过传入不同参数替换“2”的值,即可筛选出不同的数据. index.php: include 'conn.php'; //引入数据库操作类 $

php 简易分页代码

使用php制作了一个博客之后,对于分页代码着实让我这个零基础的人费了一番老劲,终于研究了一天一夜之后,勉强写了一段简易代码,勉强可以使用.此为第一个版本,未来会更新到用类的方式进行分页.加油~ <?php  //设定每页显示的文章数 $pagesize=5; //确定页数P的参数 @$p=$_GET['p']?$_GET['p']:1; //数据指针 $offset = ($p-1)*$pagesize; //查询本页显示的数据   $query = "select * from `art

自定义调用 ecshop 分页代码(转)

自定义调用 ecshop 分页代码 原文出处:http://blog.sina.com.cn/s/blog_6479ae370100hsq6.html function get_comments($num,$start){     $sql =" SELECT * FROM ecs_comment WHERE status = 1 AND parent_id = 0 and comment_type=0 ORDER BY add_time DESC  limit $start, $num&quo

分页原理+分页代码+分页类制作

分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一.对于web编程的老手来说,编写这种代码实在是和呼吸一样自然,但是对于初学者来说,常常对这个问题摸不着头绪,因此特地撰写此文对这个问题进行详细的讲解. 一.分页原理:       所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示,这里需要两个初始的参数: 每页多少条记录($PageSize)?       当前是第几页($CurrentPageID)? 现在只要再给我一个结果集,我就可以显示某段特

Oracle中经典分页代码!

在Oracle中因为没有top关键字,所以在sqlserver中的分页代码并不适用于Oracle,那么在Oracle中如何来实现分页呢? --查询所有数据 STUNO STUNAME STUAGE STUID STUSEAAT ------ -------------------- ---------- ---------- ---------- 9 王五 15 5.9876E+15 5 13 哈哈 15 5.9876E+15 5 15 李四 12 1.5666E+10 6 1 66 10 55