PHP实现简单数字分页效果

yipeiwu_com7年前PHP代码库

学习要点:
1.LIMIT 用法
2.各种参数
3.超链接调用

第一:先在文件中设置数字分页模块;我的文件是(blog.php)

复制代码 代码如下:
//分页模块
$_page = $_GET['page'];
$_pagesize = 10;
$_pagenum = ($_page - 1) * $_pagesize;
//首页要得到所有的数据总和
$_num=mysql_num_rows(_query("SELECT tg_id FROM tg_user"));
$_pageabsolute=$_num / $_pagesize;

要注意的是在数据库中取集的时候

复制代码 代码如下:
//我们必须每次重新读取结果集,而不是从新去执行SQL语句。
$_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC LIMIT $_pagenum,$_pagesize");

设置分页循环的效果

<div id="page_num">
  <ul>
  <?php for($i=0;$i<$_pageabsolute;$i++){
    if ($_page == ($i+1)) {
      echo '<li><a href="blog.php?page='.($i+1).'" class="selected">'.($i+1).'</a></li>';
    }else{
      echo '<li><a href="blog.php?page='.($i+1).'">'.($i+1).'</li>';
    }
  } ?>
  </ul>
  </div>

相对应的CSS

#page_num {
  height:20px;
  clear:both;
  padding:10px 0;
  position:relative;
}
#page_num ul {
  position:absolute;
  right:30px;
  height:20px;
}
#page_num ul li {
  float:left;
  width:26px;
  height:20px;
}
#page_num ul li a {
  display:block;
  width:20px;
  height:20px;
  line-height:20px;
  border:1px solid #333;
  text-align:center;
  text-decoration:none;
}
#page_num ul li a:hover,#page_num ul li a.selected {
  background:#666;
  font-weight:bold;
  color:#fff;
}

在其中可能会由于编码出现容错误,解决的方法是

// 分页模块
if (isset ( $_GET ['page'] )) {
  // 在数据不再数据范围内出错的解决方法
  $_page = $_GET['page'];
  // 是否为空,是否小于0,是否不是数字。//如果其中有一个是,那么就=1
  if (empty ( $_page )||$_page < 0 || !is_numeric( $_page )) {
    $_page = 1;
  } else {
    $_page = intval ( $_page ); // 如果是数字,但是小数,那么就$_page = intval($_page);转换成整数
  }
} else {
  $_page = 1;
}
$_pagesize = 10;
$_num = _num_rows( _query ( "SELECT tg_id FROM tg_user" ) );
if ($_num==0) {
  $_pageabsolute=1;
}else{
  $_pageabsolute=ceil($_num/$_pagesize);
}
//当页码大于总页码的时候,就会返回到总页码的最后一页
if ($_page>$_pageabsolute) {
  $_page=$_pageabsolute;
}
$_pagenum = ($_page - 1) * $_pagesize;

相关文章

PHP 7安装调试工具Xdebug扩展的方法教程

PHP 7安装调试工具Xdebug扩展的方法教程

前言 说到PHP代码调试,对于有经验的PHPer,通过echo、print_r、var_dump函数,或PHP开发工具zend studio、editplus可解决大部分问题,但是对于P...

使用php语句将数据库*.sql文件导入数据库

最简单的php语句把数据库*.sql文件导入数据库 复制代码 代码如下: $sql=file_get_contents("text.sql"); //把SQL语句以字符串读入$sql $...

PHP多线程类及用法实例

本文实例讲述了PHP多线程类及用法。分享给大家供大家参考。具体分析如下: 一般来说可通过WEB服务器来实现PHP多线程功能,当然,对多线程有深入理解的人都知道通过WEB服务器实现的多线程...

php中时间函数date及常用的时间计算

曾在项目中需要使用到今天,昨天,本周,本月,本季度,今年,上周上月,上季度等等时间戳,趁最近时间比较充足,因此计划对php的相关时间知识点进行总结学习 1,阅读php手册date函数 常...

php使用ftp实现文件上传与下载功能

本文实例为大家分享了php ftp文件上传与下载的具体代码,供大家参考,具体内容如下 ftp文件上传 php自带有ftp操作的函数包,一个比较简单实现的ftp文件上传操作可以通过以下几个...