Zend Framework框架實現(xiàn)類似Google搜索分頁效果
本文實例講述了Zend Framework框架實現(xiàn)類似Google搜索分頁效果。分享給大家供大家參考,具體如下:
/**
*
* @param unknown_type $model 表類型
* @param unknown_type $ncontroller 那個控制器提交的controller
* @param unknown_type $naction 那個action提交的action
*/
public function fenyepage2($model,$ncontroller,$naction){
if(!isset($_SESSION))
{session_start();}
$pageSize = $_SESSION['pagesize'];
$pageNow = $_SESSION['pagenow'];
$offset = ($pageNow-1)*$pageSize;
$db = $this->getAdapter();
$select = $db->select();
$select->from('student','*');
if(!isset($_SESSION))
{session_start();}
if($_SESSION['qsname']!=""){
$sname = $_SESSION['qsname'];
$select->where('sname like ?',"%$sname%");
}
if($_SESSION['qsaddress']!=""){
$saddress = $_SESSION['qsaddress'];
$select->where('saddress like ?',"%$saddress%");
}
if($_SESSION['qsdept']!=""){
$sdept = $_SESSION['qsdept'];
$select->where('sdept like ?',"%$sdept%");
}
$coutNews = $db->fetchAll($select);
$pageCount = ceil(count($coutNews)/$pageSize);
$select->limit($pageSize,$offset);//第一個參數(shù):總共顯示多少個。第二個參數(shù):從第幾個開始顯示
$res = $db->fetchAll($select);
$native = null;
$native = "<a href='\\$ncontroller\\$naction?pageNow=1&pagesize=$pageSize'>首頁</a> ";
if($pageNow>1){
$nextPage = $pageNow-1;
$native.=" <a href='\\$ncontroller\\$naction?pageNow=$nextPage&pagesize=$pageSize'>上一頁</a> ";
}
if(($pageNow-1)>5){
if($pageNow+4>$pageCount){//如果最后的頁數(shù)和理應前面開始的頁數(shù)小于10則
$start = $pageCount-9;//開始的頁數(shù)和結束的頁數(shù)相差9
}else{
$start=$pageNow-5;//開始位置和結束位置相差5
}
}else{
$start = floor(($pageNow-1)/10)*10+1;
}
if($pageCount>=$start+10){
$index = $start+10;
}
else{
$index = $pageCount+1;
}
for(;$start<$index;$start++){
$native.=" <a href='\\$ncontroller\\$naction?pageNow=$start&pagesize=$pageSize'>$start</a>";
}
if($pageNow<$pageCount){
$nextPage = $pageNow+1;
$native.=" <a href='\\$ncontroller\\$naction?pageNow=$nextPage&pagesize=$pageSize'>下一頁</a> ";
}
$native.=" <a href='\\$ncontroller\\$naction?pageNow=$pageCount&pagesize=$pageSize'>末頁</a> ";
$native.=" 當前{$pageNow}||總共{$pageCount}頁";
$model->arrs = $res;
$model->native = $native;
}
更多關于zend相關內容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數(shù)據庫操作入門教程》及《php常見數(shù)據庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設計有所幫助。
相關文章
深入mysql_fetch_row()與mysql_fetch_array()的區(qū)別詳解
本篇文章是對mysql_fetch_row()與mysql_fetch_array()的區(qū)別進行了詳細的分析介紹,需要的朋友參考下2013-06-06
Discuz批量替換帖子內容的方法(使用SQL更新數(shù)據庫)
這篇文章主要介紹了Discuz批量替換帖子內容的方法,使用SQL語句實現(xiàn),用REPLACE函數(shù)批量更新數(shù)據庫,需要的朋友可以參考下2014-06-06
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安裝配置圖文教程 2009年
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安裝配置教程 2009年最新版2009-06-06
PHP設計模式之解釋器(Interpreter)模式入門與應用詳解
這篇文章主要介紹了PHP設計模式之解釋器(Interpreter)模式,結合實例形式詳細分析了PHP解釋器模式的概念、原理、基本應用與相關操作注意事項,需要的朋友可以參考下2019-12-12
AJAX PHP無刷新form表單提交的簡單實現(xiàn)(推薦)
下面小編就為大家?guī)硪黄狝JAX PHP無刷新form表單提交的簡單實現(xiàn)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09

