1. PHP / Говнокод #18414

    +148

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    //----Навигация
    if ($page != 1) $pervpage = '<a href=?page=1>Первая</a> | <a href=?page='. ($page - 1) .'>Предыдущая</a> | ';
    if ($page != $total) $nextpage = ' | <a href=?page='. ($page + 1) .'>Следующая</a> | <a href=?page=' .$total. '>Последняя</a>';
    if($page - 5 > 0) $page5left = ' <a href=?page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
    if($page - 4 > 0) $page4left = ' <a href=?page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
    if($page - 3 > 0) $page3left = ' <a href=?page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
    if($page - 2 > 0) $page2left = ' <a href=?page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
    if($page - 1 > 0) $page1left = '<a href=?page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
    if($page + 5 <= $total) $page5right = ' | <a href=?page='. ($page + 5) .'>'. ($page + 5) .'</a>';
    if($page + 4 <= $total) $page4right = ' | <a href=?page='. ($page + 4) .'>'. ($page + 4) .'</a>';
    if($page + 3 <= $total) $page3right = ' | <a href=?page='. ($page + 3) .'>'. ($page + 3) .'</a>';
    if($page + 2 <= $total) $page2right = ' | <a href=?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
    if($page + 1 <= $total) $page1right = ' | <a href=?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
    if ($total > 1)
    {
    Error_Reporting(E_ALL & ~E_NOTICE);
    echo "<div class=\"pstrnav\">";
    echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
    echo "</div>";
    }

    Запостил: pi3141592653, 29 Июня 2015

    Комментарии (5) RSS

    • > pervpage

      это код с какого youporn'а?
      Ответить
    • Тут прекрасно всё.

      Нотисы выключаем, потому что половина переменных внезапно может оказаться неинициализированной?
      Ответить
    • А я поправлю чуть-чуть :)
      function pager($page, $total) {
      	$page = (!$page) ? 1 : $page;
      	$links = array();
      	if ($page != 1) {
      		$links[] = "<a href=\"?page=1\">Первая</a>";
      		$links[] = "<a href=\"?page=".($page-1)."\">Предыдущая</a>";
      	}
      	for ($i = ($page-5); $i <= ($page+5); $i++):
      		if ($i == $page) $links[] = "<b>$i</b>";
      		else if ($total >= $i && $i > 0)
      			$links[] = "<a href=\"?page=$i\">$i</a>";
      	endfor;
      	if ($page != $total) {
      		$links[] = "<a href=\"?page=".($page+1)."\">Следующая</a>";
      		$links[] = "<a href=\"?page=$total\">Последняя</a>";
      	}
      	return implode(" | ", $links);
      }
      
      echo pager(intval($_REQUEST["page"]), 50);
      Ответить

    Добавить комментарий