1. thinkphp 分頁介面怎麼寫
很多人初學thinkphp時,不太熟悉thinkphp的分頁使用方法,現在將自己整理的分頁方法分享下,有需要的朋友可以看看。
控制器中的代碼:
$db = M("cost");
$where = "查詢條件";
$count = $db->where($where)->count();
$pagecount = 20;
$page = new \Think\Page($count , $pagecount);
$page->parameter = $row; //此處的row是數組,為了傳遞查詢條件
$page->setConfig('first','首頁');
$page->setConfig('prev','上一頁');
$page->setConfig('next','下一頁');
$page->setConfig('last','尾頁');
$page->setConfig('theme','%FIRST% %UP_PAGE% %LINK_PAGE%
%DOWN_PAGE% %END% 第 '.I('p',1).' 頁/共 %TOTAL_PAGE% 頁 (
'.$pagecount.' 條/頁 共 %TOTAL_ROW% 條)');
$show = $page->show();
$list = $db->where($where)->order('id
desc')->limit($page->firstRow.','.$page->listRows)->select();
$this->assign('list',$list);
$this->assign('page',$show);
$this->display();
模版中調用代碼:
<**div class="pagelist">{$page}<**/div**>
//博客中會過濾DIV標簽,請將上面一句話中的**去除,再使用
附帶分頁樣式:
.pagelist{ text-align:center; background:#f1f1f1; padding:7px
0;}
.pagelist a{ margin:0 5px; border:#6185a2 solid 1px;
display:inline-block; padding:2px 6px 1px; line-height:16px;
background:#fff; color:#6185a2;}
.pagelist span{ margin:0 5px; border:#6185a2 solid 1px;
display:inline-block; padding:2px 6px 1px; line-height:16px;
color:#6185a2; color:#fff; background:#6185a2;}
2. PHP如何實現分頁顯示
【文件名】: c_mysql_page.inc // 【作 用】: MySQL分頁函數類 // 【作 者】: 天灰 // // 【最後修改日期】: 2001/07/16[cxx] // 【變數定義規則】:『C_』=字元型,『I_』=整型,『N_』=數字型,『L_』=布爾型,『A_』=數組型 //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // ※c_mysql_page() 構造函數,設置分頁初始參數 // ※page_standard() 分頁顯示函數(標准型) // ※GetRecordStartEnd() 獲得取記錄的開始結束位置 // ※getmaxpage() 獲得記錄集的最大頁數 // ※checkpage() 檢查當前頁數是否在0和最大頁數之間 //------------------------------------------------------------------------------------------ class c_mysql_page { //------------------------------------------------------------------------------------------ // 變數定義 //------------------------------------------------------------------------------------------ var $I_pagesize = 10; //每頁記錄數 var $C_width = '80%'; //表格寬度 //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // 函數名:c_mysql_page ($I_pagesize, $c_width) // 作 用:構造函數,設置分頁初始參數 // 參 數:$I_pagesize, $c_width // 返回值:變數 // 備 註:構造函數隨著類的建立而自動執行 //------------------------------------------------------------------------------------------ function c_mysql_page ($I_pagesize=10, $C_width='80%') { if (isset($I_pagesize)){$this -> I_pagesize = $I_pagesize;} if (isset($C_width)){$this -> C_width = $C_width;} } //------------------------------------------------------------------------------------------ // 函數名:page_standard($I_sumrecord,$C_page,$C_url="self",$C_otherpara="") // 作 用:分頁顯示函數(標准型) // 參 數:$I_sumrecord 記錄總數 // $C_url URL // $C_page URL後的參數 // $C_otherpara URL後的參數2 // $bgcolor 表格的背景顏色 // 返回值: // 備 註:無 //------------------------------------------------------------------------------------------ function page_standard($I_sumrecord,$C_page,$C_url="self",$C_otherpara="",$bgcolor="") { //檢查參數 if ((!$I_sumrecord) || (!$C_page)){AlertExit("參數不全!");} global $PHP_SELF,$$C_page; //全局變數$C_page //檢測$I_pagesize是否合法 if($this -> I_pagesize < 1){AlertExit("請設定每頁的記錄數!");} if($I_sumrecord < 1){return false;} //檢測總記錄數 if($C_url == "self"){$C_url = $PHP_SELF;} //設置URL $I_page = $$C_page; //重新賦當前頁值 $I_maxpage = $this -> getmaxpage($I_sumrecord); //取出總頁數 $I_page = $this -> checkPage($I_maxpage,$I_page); //檢查當前頁號 //顯示表 echo ""; echo ""; echo "共" . $I_sumrecord. "條主題 當前第" . $I_page . "/". $I_maxpage. "頁"; if ($I_maxpage > 1) { echo ""; if($I_page > 1 && $I_page < $I_maxpage) { echo "首頁"; $pre=$I_page-1; echo "上頁"; $next=$I_page+1; echo "下頁"; echo "末頁"; } elseif($I_page == 1) { $next = $I_page+1; echo "下頁"; echo "末頁"; } elseif($I_page == $I_maxpage) { echo "首頁"; $pre=$I_page-1; echo "上頁"; } //顯示select echo "轉到"; echo "";//OnChange=".WindowLocation($C_url,$C_otherpara,$C_page)." for($i=1;$i I_pagesize; $I_pagesize = $this -> I_pagesize; } //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // 函數名:getmaxpage($intRecordNum) // 作 用:獲得記錄集的最大頁數 // 參 數:$I_sumrecord 記錄總數 // 返回值:最大頁數$I_maxpage(整型) // 備 註:無 //------------------------------------------------------------------------------------------ function getmaxpage($I_sumrecord) { if (!$I_sumrecord){AlertExit("參數不全!>
3. PHP如何給APP介面數據做分頁
需要請求時攜帶頁碼參數,也就是客戶端get或者post請求時攜帶的頁碼參數。
剩餘的功能與做頁面時分頁一樣。如果需要資料庫查詢的話,limit實現。
比如:
<?php
...略
$page = (int)$_GET['page'];
$limit =30;
$start = ($page-1)*$limit;
$sql = "SELECT * FROM table_name WHERE status=0 limit $start,$limit";
$db->query($sql);
...略
4. php分頁功能怎麼實現
php本身是沒有分頁概念的,分頁是URL傳參,然後通過mysql查詢語句到資料庫獲取數據,然後實現的分頁,url上的參數,通過PHP的$_GET都是可以獲取到的。
現在市面上的PHP框架基本都有PHP分頁類,參照文檔直接調用就好了,如果想看實現過程,可以去下載一個TP框架,然後打開裡面的分頁類查看裡面的源代碼。
5. PHP 分頁
PHP 分頁例子如下:
<?
$sql="select * from table ";//查表
$res=mysql_query($sql);//取得結果
$nums=mysql_num_rows($res);//取得總記錄數
$pagesize=15;//設定每頁的記錄數
$pages=ceil($nums/$pagesize);//取得總頁數
if($pages<1){$pages=1;}//設定總頁數至少1頁
$page=$_GET[page];//取得傳遞過來的頁數
if($page>$pages){$page=$pages;}//如果傳遞過來的頁數比總頁數還大,就讓它等於總頁數
if($page<1){$page=1;}//如果傳遞過來的頁數小於1,就讓他等於1
$kaishi=($page-1)*$pagesize;//為下一步做准備,limit的初始記錄
$sql="select * from table order by id desc limit $kaishi,$pagesize";//取得記錄從計算出的初始值開始,一共$pagesize條
$res=mysql_query($sql);//取得結果
while($arr=mysql_fetch_array($res))
{
echo $arr[id]."---".$arr[biaoti].'<br>';//輸出記錄的ID和標題
}
?>
下面是分頁<br />
<a href="?page=1">首頁</a> <a href="?page=<? echo $page-1;?>">上頁</a> 當前第<? echo $page;?>頁 <a href="?page=<? echo $page+1;?>">下頁</a> <a href="?page=<? echo $pages;?>">尾頁</a>
6. php 怎麼調用介面實現分頁
如果總共只有10條、20條,那麼一般最佳辦法是:全部都輸出到頁面上,可以沒5條一個DIV,只顯示其中一個,把其它的隱藏了,通過按鈕點擊顯示不同的DIV出來。
如果總共數據成千上萬條,那麼頁面一次就只輸出5條,通過給PHP一個參數顯示第幾頁,每次從總數據清單裡面不同的位置開始顯示5條。
7. 如何用php實現分頁效果
將原代碼(所有用到分頁的代碼我都加有注釋)和設計頁面和IE瀏覽後的頁面都傳給你,以方便你詳查。如果這里不好看,就將此代碼復制到Dreamweaver編輯器里,加上你自己的資料庫。我不知道你用的是什麼編輯器,我用的是Dreamweaver。 這里是原代碼頁面<?php
include("inc/conn.php"); //包含你的資料庫文件
?><body>
<?php
$sql="select * from book"; //sql語句我就不用多講了吧,其中book是我要連接的表,(可自己定義)後面將不作解釋
$result=mysql_query($sql);
$number=mysql_num_rows($result); //獲得總共多少條記錄
$pagesize=10; //定義每個頁面要顯示多少條記錄
$totalpage=ceil($number/$pagesize); //獲得總的頁數,ceil($number/$pagesize)總的記錄/每頁顯示的記錄
$pageno=$_GET['pageno'];
if($pageno==""){
$pageno=1; //設定,如果當前頁為空時就顯示為第1頁
}
$startno=$pagesize*($pageno-1); //得到每頁的起始頁。$pagesize*($pageno-1)用每頁多少條記錄*(當前頁-1),這是得到起始頁的規則
$sql2="select * from book limit ".$startno.",".$pagesize; //用sql2語句中limit得出每一頁的起始頁和每一頁要顯示多少條記錄
$result2=mysql_query($sql2);
?>
<table width="600" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#0000FF">
<tr>
<th align="center" bgcolor="#FFFFFF">書名:</th>
<th align="center" bgcolor="#FFFFFF">作者:</th>
<th align="center" bgcolor="#FFFFFF">價格:</th>
</tr>
<?php
while($rows=mysql_fetch_array($result2)){ //這里是循環,不用講的吧,如果不懂再來問我
?>
<tr>
<td align="center" bgcolor="#FFFFFF"><?php echo $rows['Bookname']?></td>
<td align="center" bgcolor="#FFFFFF"><?php echo $rows['editor']?></td>
<td align="center" bgcolor="#FFFFFF"><?php echo $rows['price']?></td>
</tr>
<?php } ?>
<tr>
<td align="center" bgcolor="#FFFFFF">共<?php echo $number //顯示總共多少條記錄 ?>條記錄</td> <td align="center" bgcolor="#FFFFFF"><?php
if($pageno==1){
echo "[<a href=?pageno=".($pageno+1).">下一頁</a>][<a href=?pageno=".$totalpage.">末頁</a>]";
} //如果是第一頁時: 沒有首頁和上頁,只有下頁和末頁(後兩者有連接)
if($pageno<$totalpage && $pageno>1){
echo "[<a href=?pageno=1>首頁</a>][<a href=?pageno=".($pageno-1).">上一頁</a>][<a href=?pageno=".($pageno+1).">下一頁</a>][<a href=?pageno=".$totalpage.">末頁</a>]";
} //如果是第一頁和末頁之間的頁數:首頁,上頁,下頁,末頁都有(四者都有連接)
if($pageno==$totalpage){
echo "[<a href=?pageno=1>首頁</a>][<a href=?pageno=".($pageno-1).">上一頁</a>]";
} //如果是末頁時: 只有首頁和上頁,沒有下頁和末頁(前兩者有連接) (到此為止分布做完了,下面的是跳轉,順便也跟你說說吧,呵呵)
?></td>
<td align="center" bgcolor="#FFFFFF"><form id="form1" name="form1" method="get" action="">
<select name="pageno">
<option selected="selected">第<?php echo $pageno?>頁</option>
<?php
for($i=1;$i<=$totalpage;$i++){ //通過for定義變數i<=總頁數將總共有多少頁循環出來
?>
<option value="<?php echo $i?>">第<?php echo $i //顯示當前所看到的頁數?>頁</option>
<?php } ?>
</select>
<input type="submit" name="Submit" value="go" />
</form>
</td>
</tr>
</table>
</body> 這里是設計頁面 這里是IE瀏覽後看到的頁面
8. php介面中如何實現分頁
給介面傳入每頁記錄數,當前頁,介面按此參數返回即可
9. php實現分頁功能
具體代碼如下:
/**
* 獲取分頁的HTML內容
* @param integer $page 當前頁
* @param integer $pages 總頁數
* @param string $url 跳轉url地址 最後的頁數以 '&page=x' 追加在url後面
*
* @return string HTML內容;
*/
public static function getPageHtml($page, $pages, $url){
//最多顯示多少個頁碼
$_pageNum = 5;
//當前頁面小於1 則為1
$page = $page<1?1:$page;
//當前頁大於總頁數 則為總頁數
$page = $page > $pages ? $pages : $page;
//頁數小當前頁 則為當前頁
$pages = $pages < $page ? $page : $pages;
//計算開始頁
$_start = $page - floor($_pageNum/2);
$_start = $_start<1 ? 1 : $_start;
//計算結束頁
$_end = $page + floor($_pageNum/2);
$_end = $_end>$pages? $pages : $_end;
//當前顯示的頁碼個數不夠最大頁碼數,在進行左右調整
$_curPageNum = $_end-$_start+1;
//左調整
if($_curPageNum<$_pageNum && $_start>1){
$_start = $_start - ($_pageNum-$_curPageNum);
$_start = $_start<1 ? 1 : $_start;
$_curPageNum = $_end-$_start+1;
}
//右邊調整
if($_curPageNum<$_pageNum && $_end<$pages){
$_end = $_end + ($_pageNum-$_curPageNum);
$_end = $_end>$pages? $pages : $_end;
}
$_pageHtml = '<ul class="pagination">';
/*if($_start == 1){
$_pageHtml .= '<li><a title="第一頁">«</a></li>';
}else{
$_pageHtml .= '<li><a title="第一頁" href="'.$url.'&page=1">«</a></li>';
}*/
if($page>1){
$_pageHtml .= '<li><a title="上一頁" href="'.$url.'&page='.($page-1).'">«</a></li>';
}
for ($i = $_start; $i <= $_end; $i++) {
if($i == $page){
$_pageHtml .= '<li class="active"><a>'.$i.'</a></li>';
}else{
$_pageHtml .= '<li><a href="'.$url.'&page='.$i.'">'.$i.'</a></li>';
}
}
/*if($_end == $pages){
$_pageHtml .= '<li><a title="最後一頁">»</a></li>';
}else{
$_pageHtml .= '<li><a title="最後一頁" href="'.$url.'&page='.$pages.'">»</a></li>';
}*/
if($page<$_end){
$_pageHtml .= '<li><a title="下一頁" href="'.$url.'&page='.($page+1).'">»</a></li>';
}
$_pageHtml .= '</ul>';
echo $_pageHtml;
}
10. php寫app介面怎麼做分頁,實現下拉顯示更多
app介面分頁如何做:
兩種普遍的:1、下拉刷新,2、頁數點擊
app發送參數:page(當前條數),pageNum(每頁顯示條數)
php獲取參數:通過sql語句查詢:select * from yourTableName limit page-1,pagenum
那麼返回的結果就是你所需要的,這是符合下拉刷新的,翻頁其實也是一樣的。
具體樣式和發送參數app控制,php只是得到參數返回不同的數據
請採納