php分頁內容載入與分頁條非同步載入

2021-05-27 13:22:57 字數 739 閱讀 8497

在分頁的程式中通常都需要這樣兩個數,乙個是總數 toatal,乙個是每頁儲存數,page_count,其他的總頁數,每頁應該顯示 每幾條到第幾條的資料全都是計算出來的,不需要外部傳入。所以每取一次分頁都會做乙個select count(id) from ***之類的操作和乙個select a,b,c from *** limit m ,n 或者用 rownum,如:select t1.* from ( select t2.*, rownum rn from ( select t.* from kill_project t) t2 where rownum <5) t1 where rn >1。當資料量大的時候這個select count()會變得有點慢,開銷也就比較大。所以我的改造方案是這樣的:

1、當在取分頁資料 的時候,只關注分頁的頁數,而不關注總數,如每頁10,則傳第2頁,然後取11-20條資料就可,當然這時候預設的總頁數肯定要比實際庫裡面的總頁數大。這樣就可以取當前頁要顯示 的資料內容。

2、取完當前頁要顯示 的內容 以後就可以ajax去請求庫里滿足條件的總共有多少條,這樣就根據總數和每頁顯示的條數去生成分頁條的內容。然後用js更必改頁面元素顯示出分頁條的資訊。這樣分頁資料就可以顯示出來。頁面顯示也不會出錯。

3、當然這種做法要做到兩次請求的引數要保持一致。尤其ajax請求時一定要帶上當前第幾頁這個引數,不能忘。不然分頁資料會顯示不正確,有點小麻煩,一定要細心設計好。

作用嗎?顯示資料肯定比較 快了少了乙個開銷很大的sql。還是值 得的。當然資料量不大就不必做這個了。挺費勁的。

php分頁載入

核心邏輯 分頁顯示 引數1 資料總數 引數2 當前頁面 引數3 每頁顯示條數 引數4 顯示按鈕數 function pages total,currentpage,pagesize,show 6 pagestr 1 2 3 4 5 6 7 8 9 pagestr pagestr pagestr re...

BUI Grid非同步載入分頁小計

公司要做乙個新的管理系統,因為老大嫌棄之前easyui的版面太醜 要用bui重新做一套,悲催的我開始研究bui的控制項,發現api描述的也不是太清楚,載入順序也不太明確,在這裡自己總結一下grid 分頁非同步載入資料的做法。1 需要引入一些基礎的css樣式和js檔案。2 定義乙個div容器。3 編寫...

php 陣列內容分頁 php陣列分頁

class array pageelseelse this size size size 3 每頁顯示的記錄數 pnum ceil count arr click size 總頁數,ceil 函式用於求大於數字的最小整數 this pnum pnum 用array slice array,offse...