程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP實現簡單數字分頁效果

PHP實現簡單數字分頁效果

編輯: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;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved