1. Список говнокодов пользователя nurfed362

    Всего: 1

  2. PHP / Говнокод #18423

    +142

    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
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    <?php
    
    $self=$_SERVER['PHP_SELF'];
    
    if (isset($_GET['page'])) { $page=$_GET['page'];} else {$page=1;}
    
    $pages=25;
    $page_offset=5;
    $unique_links=9;
    
    if ($page != 1) { // Don't show back link if current page is first page.
    $back_page = $page-1;
    echo("<a href=\"$self?page=$back_page\">prev</a>    \n");}
    
    for ($i=1; $i <= $pages; $i++)  {
    
    if ($i == $page) {
     echo("<b>$i</b>\n");// If current page don't give link, just text.
     }  else {
    
    if (($i>$page-$page_offset) && ($i<$page+$page_offset)  && ($page>$page_offset)) {	
    echo("<a href=\"$self?page=$i\">$i</a> \n");
    } 
    elseif (($i<=$unique_links) && ($page<=$page_offset)) {
    	echo("<a href=\"$self?page=$i\">$i</a> \n");
    }
    elseif (($i>$pages-$unique_links) && ($page>$pages-$page_offset)) {
    echo("<a href=\"$self?page=$i\">$i</a> \n");	
    }
    
    }
    
    }
    
    if (!($page >= $pages) && $pages != 1) { // If last page don't give next link.
    $next_page = $page + 1;
    echo("<a href=\"$self?page=$next_page\">next</a>");}
    
    
    ?>

    Адовый аромат (хоть и рабочий), понимаю, но помогите упростить, пожалуйста. Условия внутри цикла скорее всего избыточны.
    Вкратце: "плавающий" пагинатор, 9 уникальных ссылок.

    nurfed362, 30 Июня 2015

    Комментарии (18)