За последние 24 часа нас посетили 17724 программиста и 1655 роботов. Сейчас ищут 889 программистов ...

Навигация на PHP (в навигации не создается ссылка на вторую)

Тема в разделе "Прочие вопросы по PHP", создана пользователем zhenia3003, 20 авг 2012.

  1. zhenia3003

    zhenia3003 Активный пользователь

    С нами с:
    20 авг 2012
    Сообщения:
    184
    Симпатии:
    3
    Вывожу изображения по 10 штук на страницу. Почему то кнопка для перехода на вторую страницу не появляется до тех пор пока число изображений не достигнет 20 штук в общем (т.е. 10 штук на первой и 10 штук на второй страницах). Как это исправить?? (к примеру 10 штук картинок на первой странице, создавали ссылку для перехода на вторую страницу с количеством изображений 1 штука на 2й странице)
    Код (Text):
    1.  
    2. <?php
    3.  $filesperpage=10;
    4. $i=0;
    5. $page=isset($_GET['p'])?$_GET['p']:1;
    6. $Results = glob("img/*.{jpg,jpeg,gif,png}", GLOB_BRACE);
    7. natsort( $Results );
    8. $Results = array_reverse($Results);
    9. foreach ($Results as $filename) {
    10.  
    11.  if ($i>=($page-1)*$filesperpage and $i<$page*$filesperpage) {
    12.  
    13.  echo "<img class='center' src=$filename width='100' height='100' />";
    14.  
    15. }
    16.     $i++;
    17. }
    18. ?>
    19. <?
    20. /* ТУТ НАВИГАЦИЯ */
    21. echo '<div class="nav_buttons"></div>';
    22. $pages=floor($i/$filesperpage);
    23. for ($p=1;$p<=$pages;$p++){
    24.  echo "<a class='nav' href=\"?p=$p\">$p</a>\n";
    25. }
    26. ?>
     
  2. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Re: Навигация на PHP (в навигации не создается ссылка на вто

    Код (Text):
    1. $pages=floor($i/$filesperpage);
    Перед этой строкой $i становится равной количеству картинок (в цикле выше). Если кол-во картинок меньше 10, то результат деления на 10 будет всегда меньше единицы (0.8, например, если в папке 8 картинок). floor округляет результат деления в меньшую сторону, в итоге получаем 0.
    А значит и цикл
    Код (Text):
    1. for ($p=1;$p<=$pages;$p++){
    не запустится.
     
  3. zhenia3003

    zhenia3003 Активный пользователь

    С нами с:
    20 авг 2012
    Сообщения:
    184
    Симпатии:
    3
    Re: Навигация на PHP (в навигации не создается ссылка на вто

    Всем спасибо за ответы! я разобрался! сделал так:
    Код (Text):
    1. $pages=ceil($i/$filesperpage);