Разделы публикаций

 
     
 

Навигация по страницам

mobo
142
    mobo mobo
Андрей
Специализации: 0

$max - сколько максимально возможно страниц, это можно выяснить методом в скобках ( $max = общее число объектов / кол-во объектов на страницу ) я не ставил этот просчёт в класс, так как его лучше выяснять ДО навигационных ссылок, для вывода сообщений что СТРАНИЦА ПУСТА, если запрашиваемая страница больше данного числа, а навигация как известно ставится после вывода объектов или не ставится вообще.

$str - данная страница, которую получаем через ГЕТ ($str = intval($GET['str']))

$path = '' - это переменная при использовании ($pars = parse_url('http://example.com/index.php?str=6') после этого, в переменной $pars['path'] будет строка '?str=6' ) это нам поможет указать нужный блок или подблок, который вы используете в своём коде, если нет, для этого есть значение по умолчанию или можете просто снести его...

// определяем функцию 
function navigator($max$str$path '') { 
     echo 'бла бла бла'// верхнее оформление блока навигации 
     $ssil $str 3// 3 это кол-во страниц, которые показывать ДО данной страницы (можете менять или добавить var) 
     $link $str 4// 4 наоборот, сколько страниц показывать за данной
     // запускаем цикл который будет действовать 7 раз или меньше если максимально страниц меньше чем $link  
     while($ssil $link and $max >= $ssil) { 
          if($ssil 0) { // тут прикрываем отрицательные числа 
               if ($ssil == $str) echo '='.$ssil.'='// номер данной страницы (если актуально) 
10                else echo '<a href=".'.$_SERVER['PHP_SELF'].'?'.$path.'str='.$ssil.'">['.$ssil.']</a>'// остальные ссылки 
11           
12           ++$ssil// воронка цикла 
13      
14      if($str 1
15           echo '<br/><a href=".'.$_SERVER['PHP_SELF'].'?'.$path.'">[в начало]</a>'// ссылка на начало 
16      if($str $max) { 
17           echo '<br/><a href=".'.$_SERVER['PHP_SELF'].'?'.$path// ссылка на конец 
18           if($path !== '') echo '&'
19           echo 'str='.$max.'">[в конец]</a>'
20           echo 'бла бла бла'//нижнее оформление 
21      
22 }


1
Просмотров: 1782
     

Новости inPHP.org Новости inPHP.org
30.12.2011   С наступающим Новым Годом!
Команда inPHP.org поздравляет всех посетителей сайта проекта с наступающим Новым Годом! Вероятно, многие участники проекта заметили некоторое затишье в уходящем году. Поверьте, в следующем всё будет несколько иначе!
31.12.2010   С Новым Годом!
Уважаемые коллеги, коллектив проекта inphp.org искренне поздравляет вас с наступающим Новым Годом!
27.05.2010   Технические работы.
По техническим причинам возможны кратковременные перебои в работе сайта проекта в период с 27.05.2010 по 1.06.2010.
02.03.2010   Доступ участников к разработке тестирований.
В тестовом режиме запущен функционал, позволяющий участникам проекта разрабатывать собственные тестирования. Разработанные сообществом тестирования не имеют ограничений официальной аккредитации и в любое время доступны любому участнику.
 
Содействуют развитию Содействуют развитию
Участники проекта Участники проекта
acalex
120
    acalex acalex

Специализации: 0
nkurrich
20
    nkurrich nkurrich

Специализации: 0
stalxed
100
    stalxed stalxed

Специализации: 0
alcanoid
120
    alcanoid alcanoid
Александр Горский
Специализации: 0
fixxxer
20
    fixxxer fixxxer

Специализации: 0
 
Статистика проекта Статистика проекта
Всего пользователей: 3648
Из них аккредитовано: 1468
Были сегодня: 2

УровеньПользователи
7742%
62376,5%
52075,7%
41945,3%
336510%
2401,1%
13509,6%
отсутствует218059,8%