使用tp自帶的分頁類時,里面自帶了POST查詢條件保留機制,但是之針對於普通的map一維數組,如果包含like,gt等等比較復雜的查詢條件則力不從心了.
帶入查詢條件
如果是POST方式查詢,如何確保分頁之后能夠保持原先的查詢條件呢,我們可以給分頁類傳入參數,方法是給分頁類的parameter屬性賦值
$count = $User->where($map)->count();// 查詢滿足要求的總記錄數$Page = new \Think\Page($count,25);// 實例化分頁類 傳入總記錄數和每頁顯示的記錄數//分頁跳轉的時候保證查詢條件foreach($map as $key=>$val) {$Page->parameter[$key] = urlencode($val);}$show = $Page->show();// 分頁顯示輸出
所以當接收到search參數時,選擇用js修改頁碼按鈕的鏈接,傳遞參數更簡單一些
1 在控制器內傳參
$this->assign('search',I('search'));
2 在列表頁加一段js代碼
<script type="text/javascript">
$('.num,.next,.prev').each(function(i){
this.href = this.href+'?search={$search}';
});
</script>
便利每個分頁按鈕,添加參數,注意需要jQuery;
