PHP實現(xiàn)簡單數(shù)字分頁效果
更新時間:2015年07月26日 11:33:03 投稿:hebedich
我們平時在開發(fā)中,經(jīng)常需要用到分頁,在項目中要用到分頁。分頁功能是經(jīng)常使用的一個功能,下面我們就來簡單分享個數(shù)字的分頁效果
學習要點:
1.LIMIT 用法
2.各種參數(shù)
3.超鏈接調(diào)用
第一:先在文件中設置數(shù)字分頁模塊;我的文件是(blog.php)
復制代碼 代碼如下:
//分頁模塊
$_page = $_GET['page'];
$_pagesize = 10;
$_pagenum = ($_page - 1) * $_pagesize;
//首頁要得到所有的數(shù)據(jù)總和
$_num=mysql_num_rows(_query("SELECT tg_id FROM tg_user"));
$_pageabsolute=$_num / $_pagesize;
$_page = $_GET['page'];
$_pagesize = 10;
$_pagenum = ($_page - 1) * $_pagesize;
//首頁要得到所有的數(shù)據(jù)總和
$_num=mysql_num_rows(_query("SELECT tg_id FROM tg_user"));
$_pageabsolute=$_num / $_pagesize;
要注意的是在數(shù)據(jù)庫中取集的時候
復制代碼 代碼如下:
//我們必須每次重新讀取結果集,而不是從新去執(zhí)行SQL語句。
$_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC LIMIT $_pagenum,$_pagesize");
$_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC LIMIT $_pagenum,$_pagesize");
設置分頁循環(huán)的效果
<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; }
在其中可能會由于編碼出現(xiàn)容錯誤,解決的方法是
// 分頁模塊 if (isset ( $_GET ['page'] )) { // 在數(shù)據(jù)不再數(shù)據(jù)范圍內(nèi)出錯的解決方法 $_page = $_GET['page']; // 是否為空,是否小于0,是否不是數(shù)字。//如果其中有一個是,那么就=1 if (empty ( $_page )||$_page < 0 || !is_numeric( $_page )) { $_page = 1; } else { $_page = intval ( $_page ); // 如果是數(shù)字,但是小數(shù),那么就$_page = intval($_page);轉(zhuǎn)換成整數(shù) } } 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數(shù)組函數(shù)序列之a(chǎn)rray_unique() - 去除數(shù)組中重復的元素值
array_unique() 函數(shù)移除數(shù)組中的重復的值,并返回結果數(shù)組。 當幾個數(shù)組元素的值相等時,只保留第一個元素,其他的元素被刪除。2011-10-10

編譯PHP報錯configure error Cannot find libmysqlclient under usr的
這篇文章主要介紹了Linux上編譯PHP報錯configure error Cannot find libmysqlclient under usr的解決方法,需要的朋友可以參考下
2014-06-06