加入收藏 | 设为首页 | 会员中心 | 我要投稿 伊春站长网 (https://www.0458zz.com/)- 管理运维、图像技术、数据标注、智能营销、数据计算!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

经典php分页代码,支持数字偏移

发布时间:2022-07-22 09:26:37 所属栏目:PHP教程 来源:互联网
导读:这款php分页代码是一款完整的php mysql css的经典分页功能,很适合于大分类有像phpwindow dz等论坛效果. CSS样式代码如下: style type=text/css !-- body { width:800px; margin:0 auto; margin-top:50px; font-size:12px; } a { color:#014ccc; text-decorat
  这款php分页代码是一款完整的php mysql css的经典分页功能,很适合于大分类有像phpwindow dz等论坛效果.
 
  CSS样式代码如下:
 
  <style type="text/css">
  <!--
  body {
   width:800px;
   margin:0 auto;
   margin-top:50px;
   font-size:12px;
  }
  a {
   color:#014ccc;
   text-decoration:none;
  }
  .div {
   float:left;
   cursor:pointer;
   font-weight:bold;
   margin-right:5px;
   display: block;
   padding:3px 7px;
   text-align:center;
   border:#bbdded solid 1px;
  }
  .divs {
   float:left;
   font-weight:bold;
   margin-right:5px;
   display: block;
   padding:3px 7px;
   text-align:center;
   border:#cccccc solid 1px;
  }
  .divsi {
   float:left;
   font-weight:bold;
   margin-right:5px;
   display: block;
   padding:3px 7px;
   text-align:center;
   background:#3399ff;
   color:#ffffff;
   border:#cccccc solid 1px;
  }
  .div:hover {
   background:#3399ff;
   color:#ffffff;
  }
  .divsi:hover {
   background:#3399ff;
   color:#ffffff;
  }
  -->
  </style>
  PHP实例效果代码如下:
 
  <?php
  mysql_connect('localhost','root','');
  mysql_select_db('news');
  mysql_query('set names gbk');
   
  $sql = mysql_query("select * from `v_char`");
  $num = mysql_num_rows($sql);
  include 'page.class.php';
  /*参数说明:
   *getpages($pagesize,$pagenum,$page,$init,$page_len);
   *$pagesize 每页记录
   *$pagenum 总记录数
   *$page $_get[page]
   *$init 数字分页最小数,默认为1,一般不用更改。
   *$page_len 数字分页的数量。
  */
  $model = new getpages(10,$num,$_get['page']);
   
  $sql = "select * from `v_char` limit $model->offset,$model->pagesize";
  $res = mysql_query($sql);
  while($row = mysql_fetch_assoc($res))
  {
   echo $row['id'] . " - " . $row['name'] .'<br>';
  }
   
  //输出分页信息
  echo $model->getpage();
  ?>
   
  page.class.php
   
  <?php
  /*
   * author:陈凯
   * data:2010-09-14
   */
  class getpages
  {
   public $pagesize;  //每页记录
   public $offset;    //起始记录数
   public $pagenum;   //总记录
   public $page;      //当前页码
   public $init;      //数字分页最左边数字
   public $page_len;  //数字分页最右边数字
   public $pages;     //总页数
    
   //初始化赋值。
   function __construct($pagesize,$pagenum,$page,$init=1,$page_len=7)
   {
    $this->pagesize = $pagesize;//每页记录
    $this->pagenum  = $pagenum; //总记录
    $this->page     = $page;
    $this->pages    = ceil($this->pagenum/$this->pagesize); //总页数
    if(emptyempty($this->page) || $this->page <1 || $this->page > $this->pages)$this->page=1;
    $this->init     = $init; //数字分页左
    $this->page_len = $page_len;//数字分页右
    $this->offset   = ($this->page-1)*$this->pagesize;
   }
    
   //输出分页
   function getpage()
   {
    $this->prepg = $this->page-1;  //上一页
    $this->nextpg= ($this->page == $this->pages) ? 0 : $this->page+1;  //下一页
  //   if($this->pages == 1) return false;  //如果只有一页跳出
    $pagenav = "<span class='divs'>共 ".$this->pages."页".$this->pagenum."条</span>";
     if($this->page == 1)
     {
      $pagenav .="<a href='#' class='div'>首页</a> ";
      $pagenav .="<a href='#' class='div'>上一页</a> ";
     }
     else
     {
       $pagenav .="<a href='".$this->get_url()."=1' class='div'>首页</a> ";
      $pagenav .="<a href='".$this->get_url()."=".$this->prepg."' class='div'>上一页</a> ";   
     }
      
     $pagenav .= $this->getvalpage(); //数字分页
      
     if($this->page == $this->pages)
     {
       $pagenav .="<a href='#' class='div'>下一页</a> ";
      $pagenav .="<a href='#' class='div'>尾页</a> ";  
     }
     else
     {
        $pagenav .="<a href='".$this->get_url()."=".$this->nextpg."' class='div'>下一页</a> ";
      $pagenav .="<a href='".$this->get_url()."=".$this->pages."' class='div'>尾页</a> ";
     }//开源代码phpfensi.com
    //下拉菜单分页列表
    
   

(编辑:伊春站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读