2013-02-06 25 views
0

想知道如何設置查詢結果的最大數量,例如,如果有超過10個結果頁面顯示1,2 ,3,4,5 ...和最後(10)等等..我使用smarty,並不知道如何使工作。Smarty - 如何設置一個最大(5)頁面以顯示來自呼叫查詢的分頁

   <!-- .pagination starts --> 
       <div class="pagination-wrapper1"> 
         <ul class="pagination"> 

          {if $active_page eq $smarty.section.page_num.index+1} 
           <li class="previous-off"><i class="icon-arrow-left"></i> Previous</li> 
          {else} 
           <li class="previous-on"><a href="#" onclick="ajax_reload_ct_function({$active_page-1})"><i class="icon-arrow-left"></i> Previous</a></li> 
          {/if} 


          {section name="page_num" loop=$pages} 
           {if $active_page eq $smarty.section.page_num.index+1} 
            <li class="active">{$smarty.section.page_num.index+1}</li> 
          {else} 
            <li><a href="#" onclick="ajax_reload_ct_function({$smarty.section.page_num.index+1})">{$smarty.section.page_num.index+1}</a></li> 
          {/if} 
          {/section} 


          {if $active_page eq $smarty.section.page_num.index} 
           <li class="next-off">Next <i class="icon-arrow-right"></i></li> 
          {else} 
           <li class="next"><a href="#" onclick="ajax_reload_ct_function({$active_page+1})">Next <i class="icon-arrow-right"></i></a></li> 
          {/if} 


          <div class="clear"></div> 
         </ul> 
        </div><!-- /.pagination ends -->  

這是我的分頁是如何工作目前:

current pagination with provided code

這是應該的一個例子......希望有人能夠幫助。

enter image description here

回答

0

我不知道智者。我認爲它是某種模板引擎。

但我可以給你這個想法如何用php做到這一點。

所以在分頁你將永遠知道你目前在哪個頁面。因此,在這種情況下,你在第39頁。

你可以做的是運行兩個循環,一個遞減當前第5頁的價值像在頁面

另一個

38 37 36 35 34時間將通過5

40 41 42 43 44在同一頁

遞增當前頁

所以你的頁面會在同一個div中回顯這些內容,所以你最終會看到顯示aboe的分頁。

ofcourse你需要做的檢查,以確保同時遞減值犯規走低於1

,並同時增加doent上面去最大頁面值。

希望這可以幫助你。

OR

您可以運行一個循環開始CURRENT_PAGE -5和去一路CURRENT_PAGE + 5

我相信你可以調整的邏輯,以顯示5頁,而不是10

相關問題