私は働くために良いページャーを手に入れようとしていますが、今後のミドルネームが正しく機能するには問題があります。使い方が分かりやすい
目標は、どのページに関係なく結果セットの最初と最後の5ページを表示することですが、最初と最後の5ページは、それを許可するのに十分なページがある場合のみ表示できます。ほんの数ページと78 79 80 81 82 >>
から12 14から< < 1 2 3 4 5:<
改ページが次のようになり4 5 6 7 8 9 10 >>
そして回避する方法これは< < 1 2 3 4 5?: - 5 7 - 7 8 9 10 11 >>
を10私のコードは、これまでのところです:function pagination_links($page, $num_rows, $results_per_page, $each_direction = 3)
{
$total_pages = $num_rows ? ceil($num_rows/$results_per_page) : 1 ;
if($total_pages < 2)
{
return null;
}
$page = ((is_numeric($page)) && ($page >= 1) && ($page <= $total_pages)) ? (int)$page : 1 ;
$output = null;
if($page > 1)
{
$output .= '<div class="pageBtn"><<</div>' ;
}
else
{
$output .= '<div class="pageBtnDis"><<</div>' ;
}
for($i=1;$i<$total_pages;$i++)
{
if($page != $i)
{
$output .= '<div class="pageBtn">' . $i . '</div>' ;
}
else
{
$output .= '<div class="pageBtnSet">' . $i . '</div>' ;
}
if($i > 4)
{
break ;
}
}
for($i = $page - $each_direction; $i <= $page + $each_direction; $i++)
{
if(($i > 5) && ($i <= $total_pages-5))
{
if($page != $i)
{
$output .= '<div class="pageBtn">' . $i . '</div>' ;
}
else
{
$output .= '<div class="pageBtnSet">' . $i . '</div>' ;
}
}
}
for($i = $total_pages-5;$i<$total_pages;$i++) {
if($page != $i)
{
$output .= '<div class="pageBtn">' . $i . '</div>' ;
}
else
{
$output .= '<div class="pageBtnSet">' . $i . '</div>' ;
}
}
if($page < $total_pages)
{
$output .= '<div class="pageBtn">>></div>' ;
}
else
{
$output .= '<div class="pageBtnDis">>></div>' ;
}
return $output ;
}
ありがとう、ちょうど私が探していたもの! – imperium2335
問題なく、助けてくれてうれしいです。 – Tony