asp.net ajax PHP ajax 分頁類別程式碼

//本分頁類不處理SQL;
//大大的加快了分頁功能
//http://blog.csdn.net/fkedwgwy
//瀟湘博客--瀟湘
/**
示範
require_once('../libs/classes/page.class.php');
$page=新頁(array('total'=>1000,'perpage'=>20));
echo 'mode:1
'.$page->show();
echo '
mode:2
'.$page->show(2);
echo '
mode:3
'.$page->show(3);
echo '
mode:4
'.$page->show(4);
echo '
開始AJAX模式:';
$ajaxpage=new page(array('total'=>1000,'perpage'=>20,'ajax'=>'ajax_page','page_name'=>'test'));
echo 'mode:1
'.$ajaxpage->show();
*/
class Zend_Page
{
/**
* 配置,公用
*/
var $page_name="page"; //page標籤,用來控制url頁。例如xxx.php?PB_page=2中的PB_page
var $next_page='>';//下一頁
var $pre_page='var $first_page ='First';//首頁
var $last_page='Last';//尾頁
var $pre_bar='var $next_bar='> >';//下一分頁條
var $format_left='';
var $format_right='';
var $is_ajax=false;//是否支援AJAX分頁模式
var $is_ajax=false;//是否支援AJAX分頁模式>>";
var $per_ten_page="/**
* 私人
*
*/
var $pagebarnum=10;//控制記錄列的數量。
var $totalpage=0;//總頁數
var $ajax_acti is not a positive integer!');
if((!is_int($perpage))||($perpageerror(__FUNCTION__,$perpage.' is not a positive integer!');
if(!empty($array['page_name']))$this->set('page_name', $array['page_name']);//設定pagename
$this->_set_nowindex($nowindex);//設定目前頁面
$this->_set_url($url);//設定連結位址
$this->totalpage=ceil($total/$perpage);
$this->total=$total;
$this->offset=($this->nowindex-1)*$perpage ;
if(!empty($array['ajax']))$this->open_ajax($array['ajax']);//開啟AJAX模式
}
/**
* 設定類別中指定變數名稱的值,如果改變量不屬於這個類,將throw一個exception
*
* @param string $var
* @param string $value
*/
function set($var,$value)
{
if(in_array($var,get_object_vars($this)))
$this->$var=$value;
else {
$this->error(__FUNCTION__,$var." does not belong to PB_Page!");
}
}
/**
* 開啟倒AJAX模式
*
* @param string $action 預設ajax觸發的動作。
*/
function open_ajax($action)
{
$this->is_ajax=true;
$this->ajax_acti
}
/**
* 取得顯示"下一頁"的程式碼
*
* @param string $style
* @return string
*/
function next_page($ style="max-width:90%"
}
/**
* 取得顯示「上一頁」的程式碼
*
* @param string $style
* @return string
*/
function pre_page($style='')
{
if($this->nowindex>1){
return $this->_get_link($this->_get_url ($this->nowindex- 1),$this->pre_page,$style)
}
return '
}
/**
* 取得顯示「上十頁」的程式碼
*
* @param string $style
* @return string
*/
function pre_ten_page($style='')
{
if(intval($this->nowindex/10)+1>; 1){
return $this->_get_link($this->_get_url(intval($this->nowindex/10)*10-5),$this->pre_ten_page,$style);
}
回傳 '
}
/**
* 取得顯示"下十頁"的程式碼
*
* @param string $style
* @return string
*/
function next_ten_page($style='')
{
if(intval($this->nowindex/10)
回傳$this-> _get_link($this->_get_url((intval($this->nowindex/10)+1)*10+5),$this->next_ten_page,$style); 🎜>}
返回'
/**
* 取得顯示「首頁」的程式碼
*
* @return string
*/
函數first_page($style='')
{
if($this->nowindex==1){
return '
}
return $this->_get_link($this->; _get_url(1),$ this->first_page,$style)
}
/**
* 取得顯示「尾頁」的程式碼
*
* @return string
*/
函數last_page($style='')
{
if($this->nowindex= =$this->totalpage){
return '
}
return $this->_get_link($this->_get_url($this->totalpage),$this->last_page,$style);
}
函數 nowbar($style='',$nowindex_style='')
{
$plus=ceil($this->pagebarnum/2);
if($this->pagebarnum-$plus+$this->nowindex>$this->totalpage)$plus=($this->pagebarnum-$this->totalpage+$this->現在索引);
$begin=$this->nowindex-$plus+1
$begin=($begin>=1)?$begin:1;
$return=''; =$begin;$ipagebarnum;$i++)
{
if($itotalpage){
if($i!=$this- >nowindex)
$return .=$this->_get_text($this->_get_link($this->_get_url($i),$i,$style ));
else
$return. =$this->_get_text('
}else{
break;
}
$return .="n";
unset($begin);
回傳$return;
* 取得顯示跳轉鈕的程式碼
*
* @return string
*/
函數select()
{
$return=''; return;
}
/**
* 取得mysql 語句中limit所需的值
*
* @return string
*/
函數offset()
{
return $this->offset;
/**
* 控制分頁顯示風格(你可以增加對應的風格)
*
* @param int $mode
* @return string
*/
function show($mode=1,$url='')
{
switch ($mode)
{
case '1 ':
$this->next_page='下一頁';
$this->pre_page='上一頁';
return $this->pre_page().$this->nowbar( ).$this->next_page().'第'.$this->select().'頁';
休息;
案例'2':
$this->next_page='下一頁';
$this->pre_page='上一頁';
$this->first_page='首頁';
$this->last_page='尾頁';
return $this->first_page().$this->pre_page().'[第'.$this->nowindex.'頁]'.$this->next_page().$this ->last_page().'第'.$this->select().'頁';
休息;
案例'3':
$this->next_page='下一頁';
$this->pre_page ='上一頁';
$this->first_page='首頁';
$this->last_page='尾頁';
回傳$this->first_page().$this-> pre_page().$this->next_page().$this->last_page();
休息;
案例'4':
$this->next_page='next';
$ this->pre_page='last';
返回$this->pre_page().$this->nowbar().$this->next_page();
休息;
案例'5':
返回$this->pre_bar().$this->pre_page().$this->nowbar().$this->next_page().$this ->next_bar();
休息;
case '6':
//啟用了“上一頁”,“下一頁”,“最後一頁”。可依情況啟用「第一頁」。
//$this ->first_page='

$this->pre_page= '

$this->next_page='

$this->last_page='最後一頁';
//return "
return "
休息;
案例' 7':
$this->next_page='

$this->pre_page='

$this->first_page='

$this-> last_page='

if($this->totalpage==0)
{$this->nowindex=0;}
回傳$this->first_page()." ".$this->; pre_page()." ".$this->next_page()." ".$this->last_page()." ".$ this->select();
休息;
case '8':
//啟用了“上一頁”,“下一頁”,“最後一頁”。可依情況啟用「第一頁」。
//$this->first_page='

$this->pre_page='

$this->next_page='

$this->last_page='最後一頁';
if($this->totalpage==0)
{$this->nowindex=0;}
//return "
休息;
}
}
/*---------------- 血管函數(血管方法)------- ----------------------------------------------------------------- ------------ ---------------*/
/ **
* 設定url頭位址
* @param: String $url
* @return boolean
*/
function _set_url($url=" ")
{
if(! empty($url)){
//手動設定
$this-> ;url=$url.((stristr($url,'?') )?'&':'?').$ this->page_name."=";
}else{
//自動取得
if(empty($_SERVER['QUERY_STRING'])) {
//不存在QUERY_STRING時
$this->url=$ _SERVER['REQUEST_URI']."?".$this->page_name."=";
}else{
//
if(stristr($_SERVER[ 'QUERY_STRING'],$this->page_name.'=')){
// 存在位址頁面參數
$this->url=str_replace($ this->page_name.'='.$this- >nowindex,'',$_SERVER['REQUEST_URI']);
$last=$this->url[strlen($this->url)-1] ;
if($last=='? '||$last=='&'){
$this->url.=$this->page_name."="
}else{
$this->url.='&; '.$this->page_name."=";
}
}else{
//
$this->url=$_SERVER ['REQUEST_URI'].'&'.$this ->page_name.'=';
}//結束if
}//結束if
}//結束if
}
/**
* 設定目前頁
*
*/
function _set_nowindex($nowindex)
{
if(empty($nowindex)){
//系統取得
if(isset($_GET [$this->page_name])){
$this->nowindex =intval($_GET[$this->page_name]);
}
}else{
//手動設定
$this->nowindex=intval($nowindex);
}
}
/**
* 為指定的頁面傳回位址值
*
* @param int $pageno
* @return string $url
*/
function _get_url($pageno=1)
{
return $this->url.$pageno;
}
/**
* 取得分頁顯示文字,比如說預設_get_text('1')會回傳[1]
*
* @param String $str
* @return string $url
*/
function _get_text($str)
{
return $this->format_left.$str.$this->format_right;
}
/**
* 取得連結位址
*/
function _get_link($url,$text,$style=''){
$style=(empty($style))?'' :'class="'.$style.'"';
if($this->is_ajax){
//如果是使用AJAX模式
return ''.$text.'';
}else{
回傳 ''.$text.'';
}
}
/**
* 出錯處理方式
*/
函數錯誤($function,$errormsg)
{
die('檔案中出現錯誤'. __FILE__.',函數'.$function.'():'.$errormsg);
}
}
?
以上就介紹了asp.net ajax PHP ajax 分頁類別程式碼,包含了asp.net ajax方面的內容,希望對PHP教學有興趣的朋友有幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

RESTAPI設計原則包括資源定義、URI設計、HTTP方法使用、狀態碼使用、版本控制和HATEOAS。 1.資源應使用名詞表示並保持層次結構。 2.HTTP方法應符合其語義,如GET用於獲取資源。 3.狀態碼應正確使用,如404表示資源不存在。 4.版本控制可通過URI或頭部實現。 5.HATEOAS通過響應中的鏈接引導客戶端操作。

在PHP中,異常處理通過try,catch,finally,和throw關鍵字實現。 1)try塊包圍可能拋出異常的代碼;2)catch塊處理異常;3)finally塊確保代碼始終執行;4)throw用於手動拋出異常。這些機制幫助提升代碼的健壯性和可維護性。

匿名類在PHP中的主要作用是創建一次性使用的對象。 1.匿名類允許在代碼中直接定義沒有名字的類,適用於臨時需求。 2.它們可以繼承類或實現接口,增加靈活性。 3.使用時需注意性能和代碼可讀性,避免重複定義相同的匿名類。
