Просмотр файла autoload/navigation.php

Размер файла: 2.12Kb
  1. <?php
  2.  
  3. // Текущая страница
  4. function page($k_page = 1)
  5. {
  6. $page = 1;
  7.  
  8. if (isset($_GET['page']))
  9. {
  10. if ($_GET['page'] == 'end') $page = intval($k_page);
  11. else if (is_numeric($_GET['page'])) $page = intval($_GET['page']);
  12. }
  13.  
  14. if ($page < 1) $page = 1;
  15.  
  16. if ($page > $k_page) $page = $k_page;
  17.  
  18. return $page;
  19. }
  20.  
  21. // Количество страниц
  22. function k_page ($k_post = 0, $k_p_str = 10)
  23. {
  24. if ($k_post != 0)
  25. {
  26. $v_pages = ceil($k_post / $k_p_str);
  27.  
  28. return $v_pages;
  29. }
  30. else return 1;
  31. }
  32.  
  33. // Вывод номеров
  34. function str($link = '?', $k_page = 1, $page = 1)
  35. {
  36. if ($page < 1) $page = 1;
  37.  
  38. echo '<div class="menu">Стр: ';
  39.  
  40. # Ссылка на первую страницу
  41. if ($page != 1) echo '<a href="'. $link .'page=1">&laquo;</a> ';
  42.  
  43. if ($page != 1) echo '<a href="'. $link .'page=1">1</a>';
  44. else echo '[1]';
  45.  
  46. for ($ot=-3; $ot<=3; $ot++)
  47. {
  48. if ($page + $ot > 1 && $page + $ot < $k_page)
  49. {
  50. if ($ot == -3 && $page + $ot > 2) echo ' .. ';
  51.  
  52. if ($ot != 0) echo ' <a href="'. $link .'page='. ($page + $ot) .'">'. ($page + $ot) .'</a>';
  53. else echo ' ['. ($page + $ot) .']';
  54.  
  55.  
  56. if ($ot == 3 && $page + $ot < $k_page - 1) echo ' .. ';
  57. }
  58. }
  59.  
  60. if ($page != $k_page) echo ' <a href="'. $link .'page=end">'. $k_page .'</a>';
  61. else if ($k_page > 1) echo ' ['. $k_page .']';
  62.  
  63. # Ссылка на последнюю страницу
  64. if ($page!=$k_page) echo ' <a href="'. $link .'page=end">&raquo;</a>';
  65.  
  66. echo '</div>';
  67. }
  68.  
  69. // Объявление постраничной навигации в скрипте
  70. function nav_start($var, $limit)
  71. {
  72. global $k_page, $page, $start;
  73.  
  74. $k_page = k_page($var, $limit);
  75. $page = page($k_page);
  76. $start = $limit * $page - $limit;
  77. }
  78.  
  79. // Отображение постраничной навигации
  80. function view_nav($link = '?')
  81. {
  82. global $k_page, $page;
  83.  
  84. if ($k_page > 1) str($link, $k_page, $page);
  85. }
  86.  
  87. ?>