[英]Display range of items displayed in PHP pagination
我在頁面上進行了分頁,每頁最多顯示12個項目。 我現在的問題是如何顯示頁面中顯示的項目范圍。 這是我的代碼以及到目前為止我嘗試過的內容:
<div class="search_hits flex_box">
@if(count($result) == 0)
<p>No result found.</p>
@else
<p>検索結果{{$total}}件ヒット</p>
<p>Showing {{floor(count($result) / 12) + (count($result) % 12)}}items</p>
</div>
<ul class="projects">
@foreach ($result as $detail)
<li>
<a href="../contests/details/index.html">
<div class="prjct_title">
<p>{{ $detail['contest_name'] }}</p>
</div>
<div class="calc_height_o">
<div class="calc_height_i">
<div class="fitimg"><img src="{{ isset($detail->photos['0']) ? $detail->photos['0']['contest_photo'] : ''}}"></div>
</div>
</div>
<div class="prjct_btc">
<p>Prize BTC for {{ $detail['total_prize'] }}LPY</p>
</div>
</a>
</li>
@endforeach
</ul><!--projects END-->
@endif
@if ($result->hasPages())
<ul class="pagenation">
{{-- Previous Page Link --}}
@if ($result->onFirstPage())
<li class="disabled"><span>«</span></li>
@else
<li><a href="{{ $result->previousPageUrl() }}" rel="prev">«</a></li>
@endif
@foreach(range(1, $result->lastPage()) as $i)
@if($i == 1)
@if($i == $result->currentPage())
<li class="active"><span>{{ $i }}</span></li>
@else
<li><a href="{{ $result->url($i) }}">{{ $i }}</a></li>
@endif
@elseif($i == $result->lastPage())
@if($i == $result->currentPage())
<li class="active"><span>{{ $i }}</span></li>
@else
<li><a href="{{ $result->url($i) }}">{{ $i }}</a></li>
@endif
@elseif($i >= $result->currentPage() - 2 && $i <= $result->currentPage() + 2)
@if ($i == $result->currentPage())
<li class="active"><span>{{ $i }}</span></li>
@else
@if($i == ($result->currentPage() - 1) || $i == ($result->currentPage() + 1) )
<li><a href="{{ $result->url($i) }}">{{ $i }}</a></li>
@else
@if(($result->currentPage() - 2) > 1 || ( $result->currentPage() + 2 ) < $result->lastPage() )
<li><span class="ellipsis">...</span></li>
@endif
@endif
@endif
@endif
@endforeach
{{-- Next Page Link --}}
@if ($result->hasMorePages())
<li><a href="{{ $result->nextPageUrl() }}" rel="next">»</a></li>
@else
<li class="disabled"><span>»</span></li>
@endif
</ul>
@endif
<!--pagenation END-->
</div>
但是這里的問題是,它始終顯示Showing 2 items
。
<p>Showing {{floor(count($result) / 12) + (count($result) % 12)}}items</p>
我想要的輸出就像,如果我有18個結果,則在第一頁上將顯示Showing 1~12 items
,第二頁上Showing 13~18 items
。
好的。 我發現了一些駭客。 我這樣做是這樣的:
<p>
Showing
@if ($result->onFirstPage())
{{1 . '~' . 12}}
@else
{{(($result->currentPage()-1)*12)+1 . '~' . $result->currentPage() * 12}}
@endif
items
</p>
您可以根據需要進行修改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.