За последние 24 часа нас посетили 18504 программиста и 1662 робота. Сейчас ищут 823 программиста ...

Помогите сделать простенькую пагинацию для зпроса

Тема в разделе "PHP для новичков", создана пользователем Колбася, 14 сен 2012.

  1. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Код (PHP):
    1. $nu=1;
    2.         $data=mysql_query("SELECT `id` FROM `users` ORDER BY `id` ;");
    3.                     while ($row = mysql_fetch_array($data)) {
    4.                     echo "<tr><td>".$nu++.". ";    
    5.                                                     userfunc($row['id']);        
    6.                     } 
    Выводит пользователей из бд - в 1 страницу - пользователей прибавилось и страница получается длинной - нельзя ли как-то сделать чтобы sql limit100 и след страница начинается со 100->200 и тд..
    И внизу кнопочки <<1 2 3 4 >>
     
  2. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Код (PHP):
    1. <?php
    2. $perPage = 100;
    3. $page = isset($_GET['page']) ? (int) $_GET['page'] : 0;
    4. $res = mysql_query('SELECT COUNT(*) FROM `users`');
    5. $total = (int) mysql_result($res, 0, 0);
    6. $pages = (int) ceil($total / $perPage);
    7. if($page > $pages)
    8.     $page = $pages;
    9. if($page < 1)
    10.     $page = 1;
    11. $start = (int) ($page - 1) * $perPage;
    12. $nu = 1;
    13. $data = mysql_query("SELECT `id` FROM `users` ORDER BY `id` LIMIT {$start}{$perPage}");
    14. while($row = mysql_fetch_array($data)) {
    15.     echo "<tr><td>" . $nu++ . ". ";
    16.     userfunc($row['id']);
    17. }
    18. // Выводим ссылки на страницы
    19. if($pages > 1) {
    20.     for($i = 1; $i <= $pages; ++$i) {
    21.         echo '[url="?page' . $i . '"]' . $i . '[/url] ';
    22.     }
    23. }
    24. ?>
     
  3. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Не переходит по страницам что-то
     
  4. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Код (PHP):
    1. echo '[url="?page=' . $i . '"]' . $i . '[/url] ';