Мне надо чтобы были ссылки на первые и последние 3 страницы, а также на 3 предыдущие и 3 следующие от активной страницы
Всё работает ну смущает то, что огромный код получился
Посмотрите если есть время, и подскажите, если есть более простой способ.
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- #LifePlay# Постраничная навигация. Требуется “$page=текущая страница” ”$pages=количество страниц”
- //если $pages<=6
- if ($pages<=6){
- for ($i=1; $i<=$pages; $i++) {
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '<br/>';}
- //если $pages>=7 and $pages<13
- if ($pages>=7 and $pages<13){
- if ($page+3<$pages-2){
- for ($i=1; $i<=$page+3; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '...';
- for ($i=$pages-2; $i<=$pages; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- if ($page>=$pages-5){
- if($page>=7){
- for ($i=1; $i<=3; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '...';
- for ($i=$page-3; $i<=$pages; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- if($page<7){
- for ($i=1; $i<=$pages; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- }
- echo '<br/>';}
- //если $pages>=13
- if ($pages>=13){
- if ($page<=6){
- for ($i=1; $i<=$page+3; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '.. ..';
- for ($i=$pages-2; $i<=$pages; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- if ($page>=7 and $page<$pages-5){
- for ($i=1; $i<=3; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '..';
- for ($i=$page-3; $i<=$page+3; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '..';
- for ($i=$pages-2; $i<=$pages; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- if ($page>=$pages-5){
- for ($i=1; $i<=3; $i++){
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- echo '.. ..';
- for ($i=$page-3; $i<=$pages; $i++){
- if ($i==$page) echo $page;
- else
- echo '<a href=index.php?d='.$d.'&page='.($i).'>'.($i).'</a>';
- }
- }
- echo '<br/>';}
- ?>