Вход Регистрация
* romanvht

ООП Пагинация)

  1. class pager
  2. {
  3. public $start;
  4. public $end;
  5. public $pages;
  6. public $page;
  7. public $count;
  8. public $url;
  9.  
  10. function __construct($count, $url)
  11. {
  12. $this->page = abs(intval($_REQUEST['page']));
  13. $this->count = $count;
  14. $this->url = $url;
  15. $this->pages = intval($this->count / 10)+1;
  16. if(empty($this->page) || $this->page < 0)$this->page = 1;
  17. if($this->page > $this->pages) $this->page = $this->pages;
  18. $this->start = $this->page * 10 - 10;
  19. $this->end = 10;
  20. }
  21.  
  22. function pag ()
  23. {
  24. if($this->pages > 1){
  25. $bp = $this->page - 1;
  26. $np = $this->page + 1;
  27. $bp2 = $this->page - 2;
  28. $np2 = $this->page + 2;
  29. $page = '<span class="s">'.$this->page.'</span>';
  30. echo '<div class="nav"><center>';
  31. // Условия для вывода ссылок
  32. if($this->page > 1){
  33. $back = '<span class="n"><a href="'.$this->url.$bp.'">'.$bp.'</a></span> ';
  34. $last = '<span class="n"><a href="'.$this->url.$bp.'">&laquo; Назад</a></span> ';
  35. }
  36. if($this->page < $this->pages){
  37. $next = ' <span class="n"><a href="'.$this->url.$np.'">'.$np.'</a></span>';
  38. $new = ' <span class="n"><a href="'.$this->url.$np.'">Далее &raquo;</a></span>';
  39. }
  40. // Условия для вывода навигации и формы
  41. if($bp2 >= 1)$back2 = '<span class="n"><a href="'.$this->url.$bp2.'">'.$bp2.'</a></span> ';
  42. if($np2 <= $this->pages)$next2 = ' <span class="n"><a href="'.$this->url.$np2.'">'.$np2.'</a></span>';
  43. if($bp2 > 1)$st_l = '<span class="n"><a href="'.$this->url.'1">&laquo;1</a></span> ';
  44. if($np2 < $this->pages)$nx_l = ' <span class="n"><a href="'.$this->url.$this->pages.'">'.$this->pages.'&raquo;</a></span>';
  45. //
  46. if($this->pages > 10)$form = '<br/><form action="'.$this->url.'" method="post"><input type="text" name="page" size="5"><input type="submit" value="Go"/></form>';
  47. echo $last.$new.'<br/>'.$st_l.$back2.$back.$page.$next.$next2.$nx_l.$form;
  48. echo '</center></div>';
  49. }
  50. }
  51. }
» Описание: Вот держите. Писал себе, но будет полезна другим. Применение

$count = $db->query("SELECT `id` FROM
» Время добавления: 16 Дек 2014 в 13:30
» Посмотров: 1049
» textarea
» Рейтинг: [+1 | -1]
Комментарии [6]
Онлайн: 3
Реклама