Вопрос про пагинацию

Максимка

Новичок
Добрый день, возникли проблема с пагинацией, а именно, откуда-то берется добавочная пустая страница с номером, вот код

Код:
<div id="pagination">
          <?php if (!empty($pagination['pages'])){?>
          <?php foreach($pagination['pages'] as $k => $v) {
              $page = $v['page']+1;
              $menu = "";
              if($newsboy->page == $v['page']) {$menu = 'class="current_page"';}
              echo '<a href="werke.php?cat_id=' . $category. '&sort=' . $sort . '&page=' . $page . '" ' . $menu . '>'  . $page . '</a>';
             
          } ?>
          <?php if ( $pagination['last'] !== false ){?>
          <?php }} ?>
        </div>
как сделать так что она работала корректно
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
займись отладкой, посмотри что у тебя там в потрохах приходит, сделай несколько var_dump'ов чтобы оценить нутро $pagination['pages']
 

peon

Lok'tar ogar
Выполни
die(var_dump($pagination['pages']));
Скинь полученный дамп сюда
 

Максимка

Новичок
array(14) { [0]=> array(2) { ["page"]=> int(0) ["url"]=> string(34) "/galeriegrenville/werke.php?page=0" } [1]=> array(2) { ["page"]=> int(1) ["url"]=> string(34) "/galeriegrenville/werke.php?page=1" } [2]=> array(2) { ["page"]=> int(2) ["url"]=> string(34) "/galeriegrenville/werke.php?page=2" } [3]=> array(2) { ["page"]=> int(3) ["url"]=> string(34) "/galeriegrenville/werke.php?page=3" } [4]=> array(2) { ["page"]=> int(4) ["url"]=> string(34) "/galeriegrenville/werke.php?page=4" } [5]=> array(2) { ["page"]=> int(5) ["url"]=> string(34) "/galeriegrenville/werke.php?page=5" } [6]=> array(2) { ["page"]=> int(6) ["url"]=> string(34) "/galeriegrenville/werke.php?page=6" } [7]=> array(2) { ["page"]=> int(7) ["url"]=> string(34) "/galeriegrenville/werke.php?page=7" } [8]=> array(2) { ["page"]=> int(8) ["url"]=> string(34) "/galeriegrenville/werke.php?page=8" } [9]=> array(2) { ["page"]=> int(9) ["url"]=> string(34) "/galeriegrenville/werke.php?page=9" } [10]=> array(2) { ["page"]=> int(10) ["url"]=> string(35) "/galeriegrenville/werke.php?page=10" } [11]=> array(2) { ["page"]=> int(11) ["url"]=> string(35) "/galeriegrenville/werke.php?page=11" } [12]=> array(2) { ["page"]=> int(12) ["url"]=> string(35) "/galeriegrenville/werke.php?page=12" } [13]=> array(2) { ["page"]=> int(13) ["url"]=> string(35) "/galeriegrenville/werke.php?page=13" } }
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
peon, зря ты это сказал... пусть учится думать головой и искать ошибки
 

Максимка

Новичок
c0dex я с пхп имею очень редко дело, и на форуме я редкий гость, поэтому если есть соображения, подскажи, а троллить нечего
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Максимка, если ты пришел сюда не учиться, то скорей всего ты пришел не в то место. Копаться в твоем коде за просто так, мало кто будет, тем более при таком вот оформлении.

PS: внутри массива у тебя адовый трешняк, потому как
- генерить нулевые номера страниц, чтобы потом сделать к ним +1 - это вообще нечто
- страница №1 после твои операций все равно будет вести тебя на /galeriegrenville/werke.php?page=0, что тоже в общем то странно.
- генерить ссылки, а то есть куски view неизвестно где (подозреваю в php коде) - тоже неправильно
 

Максимка

Новичок
c0dex я как раз пришел учится, а фраза сиди отлаживай, это равносильно что какого ты сюда пришел, я пришел с конкретной проблемой при этом не так часто я это делаю

генерить нулевые номера страниц, чтобы потом сделать к ним +1 - это вообще нечто - хорошо, как должно по вашему мнению это выглядеть?
 

Andkorol

Новичок
а фраза сиди отлаживай, это равносильно что какого ты сюда пришел
Это равносильно:
Для собственного блага и экономии времени – потрать, пожалуйста, один раз 20-30 минут на прочтение/понимание http://phpfaq.ru/debug – это позволит тебе сэкономить кучу времени в перспективе, научит быстро и самостоятельно находить и исправлять ошибки в коде.
И это работает – говорю по собственному опыту.

PS: там вообще много полезного, и по сабжу http://phpfaq.ru/paginator
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Максимка, я вроде бы достаточно корректно и беззлобно навел на путь, по которому надо идти, ссылки Andkorol это дополняют очень хорошо.

Я вот из первого вопроса вообще не понимаю откуда этот вырванный кусок кода, что внутри и что ты счел "лишней" страницей. Понятно стало на счет нутра только после наводящего вопроса про var_dump. Очень хочется, чтобы было все сразу понятно, не приходилось вытягивать из пришедших кучу подробностей. А вообще лучше прочитай ссылки выше и перепиши.
 
Сверху