Guest User

Untitled

a guest
Jan 21st, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.51 KB | None | 0 0
  1. <?php
  2. $db_host='localhost'; // Тут адрес, где находится ваша БД
  3. $db_name='designinmedjango'; // Название вашей БД
  4. $db_login='designinmedjango'; // Ваш логин доступ к базе данных
  5. $db_pass='vUU3MgXH'; // Ваш пароль доступ к базе данных
  6. @mysql_connect($db_host, $db_login, $db_pass); // Тут происходит этап связи с БД
  7. @mysql_select_db($db_name); // Переключаемся на нужную нам БД
  8.  
  9.  
  10. function universal_link_bar($page, $count, $pages_count, $show_link)
  11. {
  12. // $show_link - это количество отображаемых ссылок;
  13. // нагляднее будет, когда это число будет парное
  14. // Если страница всего одна, то вообще ничего не выводим
  15. if ($pages_count == 1) return false;
  16. $sperator = ' '; // Разделитель ссылок; например, вставить "|" между ссылками
  17. // Для придания ссылкам стиля
  18. $style = 'style="color: #808000; text-decoration: none;"';
  19. $begin = $page - intval($show_link / 2);
  20. unset($show_dots); // На всякий случай :)
  21. // Сам постраничный вывод
  22. // Если количество отображ. ссылок больше кол. страниц
  23. if ($pages_count <= $show_link + 1) $show_dots = 'no';
  24. // Вывод ссылки на первую страницу
  25. if (($begin > 2) && !isset($show_dots) && ($pages_count - $show_link > 2)) {
  26. echo '<a '.$style.' href='.$_server['php_self'].'?page=1> |< </a> ';
  27. }
  28.  
  29. for ($j = 0; $j < $page; $j++) {
  30. // Если страница рядом с концом, то выводить ссылки перед идущих для того,
  31. // чтобы количество ссылок было постоянным
  32. if (($begin + $show_link - $j > $pages_count) && ($pages_count-$show_link + $j > 0)) {
  33. $page_link = $pages_count - $show_link + $j; // Номер страницы
  34. // Если три точки не выводились, то вывести
  35. if (!isset($show_dots) && ($pages_count-$show_link > 1)) {
  36. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.($page_link - 1).'><b>...</b></a> ';
  37. // Задаем любое значение для того, чтобы больше не выводить в начале "..." (три точки)
  38. $show_dots = "yes";
  39. }
  40. // Вывод ссылки
  41. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.$page_link.'>'.$page_link.'</a> '.$sperator;
  42. } else continue;
  43. }
  44. for ($j = 0; $j <= $show_link; $j++) // Основный цикл вывода ссылок
  45. {
  46. $i = $begin + $j; // Номер ссылки
  47. // Если страница рядом с началом, то увеличить цикл для того,
  48. // чтобы количество ссылок было постоянным
  49. if ($i < 1) {
  50. $show_link++;
  51. continue;
  52. }
  53. // Подобное находится в верхнем цикле
  54. if (!isset($show_dots) && $begin > 1) {
  55. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.($i-1).'><b>...</b></a> ';
  56. $show_dots = "yes";
  57. }
  58. // Номер ссылки перевалил за возможное количество страниц
  59. if ($i > $pages_count) break;
  60. if ($i == $page) {
  61. echo ' <a '.$style.' ><b>'.$i.'</b></a> ';
  62. } else {
  63. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.$i.'>'.$i.'</a> ';
  64. }
  65. // Если номер ссылки не равен кол. страниц и это не последняя ссылка
  66. if (($i != $pages_count) && ($j != $show_link)) echo $sperator;
  67. // Вывод "..." в конце
  68. if (($j == $show_link) && ($i < $pages_count)) {
  69. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.($i+1).'><b>...</b></a> ';
  70. }
  71. }
  72. // Вывод ссылки на последнюю страницу
  73. if ($begin + $show_link + 1 < $pages_count) {
  74. echo ' <a '.$style.' href='.$_server['php_self'].'?page='.$pages_count.'> >| </a>';
  75. }
  76. return true;
  77. } // Конец функции
  78.  
  79.  
  80. // Подготовка к постраничному выводу
  81. $perpage = 2; // Количество отображаемых данных из БД
  82. if (empty($_get['page']) || ($_get['page'] <= 0)) {
  83. $page = 1;
  84. } else {
  85. $page = (int) $_get['page']; // Считывание текущей страницы
  86. }
  87. // Общее количество информации
  88. $count = mysql_numrows(mysql_query('select * from autoparts')) or die('error! Записей не найдено!');
  89. $pages_count = ceil($count / $perpage); // Количество страниц
  90. // Если номер страницы оказался больше количества страниц
  91. if ($page > $pages_count) $page = $pages_count;
  92. $start_pos = ($page - 1) * $perpage; // Начальная позиция, для запроса к БД
  93. // Вызов функции, для вывода ссылок на экран
  94.  
  95. universal_link_bar($page, $count, $pages_count, 10);
  96.  
  97. // Вывод информации из базы данных
  98. echo '<p><b>Постраничный вывод информации</b></p>';
  99. echo "<TABLE BORDER=0 CELLSPACING=0 width=70% align=center>";
  100. echo "<tr><td>Номер MAN</td><td>Наименование</td><td>Вес</td><td>Цена</td></tr>";
  101. $result = mysql_query('select * from autoparts limit '.$start_pos.', '.$perpage) or die('error!');
  102. while ($row = mysql_fetch_array($result)) {
  103. echo '<tr><td>'.$row['product_number'].'</td><td>'.$row['product_name'].'</td><td>'.$row['weight'].'</td><td>'.$row['price'].'</td></tr>';
  104. }
  105. echo "</TABLE>";
  106. ?>
Add Comment
Please, Sign In to add comment