1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #11353

    +54

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /**
         * Грабли - наше всьо
         * @return string
         */
        function toPage()
        {
            ...
        }

    прекрасно задокументированная функция

    shmaltorhbooks, 03 Июля 2012

    Комментарии (3)
  3. JavaScript / Говнокод #11338

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (canvas.cuserStatus == "yes") {
        this.changeUserContactByHash.pending = true;
        this.changeUserContactByHash.doCall();
    } else if (canvas.cuserStatus == "no") {
        this.changeUserContactByHash.pending = true;
        this.changeUserContactByHash.doCall();
    }

    Написано это на OpenLaszlo, но так как такого языка в выборе нет, то сойдёт и ЖС, главное подсветка и смысл.

    хуита, 02 Июля 2012

    Комментарии (3)
  4. PHP / Говнокод #11273

    +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
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    <?php
     require('url_to_absolute.php');
    ini_set('display_errors','On');
    error_reporting('E_ALL');
    $ext=array(
    'pictures'=>array('bmp','jpg','jpeg','pgm','rgb','tga','png','gif','ico'),
    'docs'=>array('rtf','doc','docx','pdf','txt'),
    'html'=>array('shtml','html','xml','css','htm','xhtml'),
    'audio'=>array('mp3','mp4','mpeg','flv','3gp','webm'),
    'arch'=>array('zip','rar','gz','bz2','tar','7zip','ar','tar\.gz','tar\.bz2','xz'),
    'pack'=>array('deb','rpm','jar'),
    'scripts'=>array('sh','pl','py','php','js')
    );
    $murl="";
    $sext="";
    $routh='|((?<=[" ])[^" ]+/[a-z0-9-_%.]+\.';
    foreach($ext as $sk=>$sval){
    foreach($sval as $exts){
      $routh.='(?!'.$exts.'")';
    }
    }
    $routh.='[a-z0-9]{1,5}(?=[" ]))|i';
    echo $routh."<br\ >";
    if(isset($_GET['url'])){
    $url=$_GET['url'];echo $url."<br>";
    preg_match('|(ftp)?(http)?(?:s)?://[a-z0-9-]+\.[a-z]+(\.[a-z0-9-_&+?=%]+)*(?::[0-9]+)?|i',$url,$ures);
    if(!empty($ures[0])){echo $ures[0];$murl=$ures[0];echo "<br>murl ".$murl."<br> ";}
    $html=file_get_contents($url);
    
    foreach($ext as $key=>$val){
    echo "<h2>$key</h2><br\>";
    foreach($val as $mext){
    echo "$mext<br>";
    preg_match_all('|((/[.a-z0-9_-]*)*/[a-z0-9-_.%]+\.'.$mext.'(?![a-z])(?!/))|i',$html,$result);
      if(!empty($result)){
      if(!empty($result[0])){
        $result[0]=array_unique($result[0]);
      foreach($result[0] as $vres){
        $aurl=url_to_absolute($url,$vres);
        echo("<a href=\"$aurl\">".$aurl."</a> ");}
    }
    }
    preg_match_all('|((http(?:s)?://)[a-z0-9-]+\.[a-z]+(?:\.[a-z0-9-_&+?=%]+)*(?::[0-9]+)?(?:/[a-z0-9_-.]*)/[.a-z0-9-_%]+\.'.$mext.'(?![a-z])(?!/))|i',$html,$result);
    if(!empty($result)){
    if(!empty($result[0])){
      $result[0]=array_unique($result[0]);
      foreach($result[0] as $vres){
        $aurl=url_to_absolute($url,$vres);
    echo("<a href=\"$aurl\">".$aurl."</a> ");}
    }
    }
    preg_match_all('|((?<=[" ])[^" ]+\.'.$mext.'(?=[" ]))|i',$html,$result);
    if(!empty($result)){
    if(!empty($result[0])){
    $result[0]=array_unique($result[0]);
    foreach($result[0] as $vres){
        $aurl=url_to_absolute($url,$vres);
    echo("<a href=\"$aurl\">".$aurl."</a> ");}
    }
    }
    
    }
    }
    preg_match_all($routh,$html,$result);
    if(!empty($result)){
    if(!empty($result[0])){
    $result[0]=array_unique($result[0]);
    echo "<br><h2>Other documents</h2><br>";
    foreach($result[0] as $vres){
        $aurl=url_to_absolute($url,$vres);
    echo("<a href=\"$aurl\">".$aurl."</a><br \> ");
    }
    }
    }
    } else { printf("No url\n");}
    ?>

    Вытягивает ссылки на картинки с html файла

    AliceGoth, 21 Июня 2012

    Комментарии (3)
  5. PHP / Говнокод #11016

    +153

    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
    <ul class="menu">
      <li class="leaf first">
        <a href="http://example.com/app1?operator=<!--{cke_protected}
          <?php echo($user->profile_crm_name); ?>
          -->" target="_blank">Заявка №1</a>
      </li>
      <li class="leaf">
        <a href="http://example.com/app2?operator=<!--{cke_protected}
          <?php echo($user->profile_crm_name); ?>
          -->" target="_blank">Заявка №2</a>
      </li>
      <!-- ... еще десяток ... -->
    </ul>

    Drupal, приложение для колл-центра, пользовательский блок со списком ссылок. {cke_protected} - защита от WYSIWYG-редактора.

    Спасибо, что хоть без SQL

    scriptin, 17 Июня 2012

    Комментарии (3)
  6. Java / Говнокод #10628

    +125

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // Handle Ctrl-1 ... Ctrl-9 keypresses
    if (!event.isSpecialKey() && event.isControlKey()) {
    	final int code = event.getKeyCode();
    	
    	if (code >= '1' && code <= '9') {
    		// Technically, the keyCode is not the ASCII code and should not
    		// be treated as such. Stupid JavaScript events. However, it
    		// *just so happens* that for number keys these codes match their
    		// ASCII codes. Luckily for us.

    someone, 08 Июня 2012

    Комментарии (3)
  7. PHP / Говнокод #10623

    +65

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // если нужно вернуть json
    if (request('json', false)) {
    	echo "<html><head><script>
    				document.domain = \"" . substr(\system\config\auth::SESSION_COOKIES_DOMAIN, 1) . "\";
    			</script></head><body>";
    	echo json_encode(array('status' => 'ok',
    											   'data'   => array('hash'     => $file_id,
    																 'duration' => $mediaFile->getDuration(),
    																 'width'    => $mediaFile->getVideoWidth(),
    																 'height'   => $mediaFile->getVideoHeight())));
    	echo "</body></html>";
    }

    А вам слабо вот так выводить JSON?

    WinnerWolf, 08 Июня 2012

    Комментарии (3)
  8. Java / Говнокод #10596

    +72

    1. 1
    2. 2
    Long count = ((Long) q.getSingleResult()).longValue();
    int pages = ((Long) (count / rowsPerPage)).intValue();

    конвертировали-конвертировали, и выконвертировали

    Lure Of Chaos, 06 Июня 2012

    Комментарии (3)
  9. PHP / Говнокод #10572

    +61

    1. 1
    $site->Radio('showin[]', 'ALL_EXCEPT', in_array('ALL_EXCEPT',$showin) or !in_array('ALL_EXCEPT', $showin) )

    http://upload.wikimedia.org/wikipedia/ru/math/f/6/d/f6db44e1aa2287204b26130ac9e4fe90.png как бэ

    Мартин, 05 Июня 2012

    Комментарии (3)
  10. C# / Говнокод #10542

    +89

    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
    private void СтолкновениеСБонусом()// столкновение с бонусом
            {
                for (int i = 0; i < бонус.Count; i++)
                {
                    if (Math.Abs(packMan.x - бонус[i].x) <= 19 && (packMan.y == бонус[i].y)
                        ||
                        (packMan.x == бонус[i].x) && Math.Abs(packMan.y - бонус[i].y) <= 19
                        ||
                        Math.Abs(packMan.x - бонус[i].x) <= 19 && Math.Abs(packMan.y - бонус[i].y) <= 19
                        )
                    {
                        бонус.Remove(бонус[i]);//удаляем бонус
                        fl1 = false;//ставим в ложь и привидения прекрашают движение
                        //Labe2();
                        _tm1.Enabled = true;//таймер включен, хоть он и так включен
                        
                        _tm1.Start();//старт таймера
                    }
                }
            }

    Автор кода недоумевает, как код сделать еще читабельнее :facepalm:
    Комментарии доставляют :)
    Тема на форуме http://www.cyberforum.ru/csharp-beginners/thread586090.html

    psina-from-ua, 04 Июня 2012

    Комментарии (3)
  11. Си / Говнокод #10540

    +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
    if (!menu) error(E_NOMEM);    /* add titles and items */
      if ((mn_addtitle(menu, "file",     0, 0,           0) != 0)
      ||  (mn_additem (menu, "load",     1, mcb_load,    0) != 0)
      ||  (mn_additem (menu, "save",     0, mcb_save,    0) != 0)
      ||  (mn_additem (menu, "mpost",    0, mcb_mpost,   0) != 0)
      ||  (mn_additem (menu, NULL,       0, 0,           0) != 0)
      ||  (mn_additem (menu, "quit",     0, mcb_quit,    0) != 0)
      ||  (mn_addtitle(menu, "actions",  0, 0,           0) != 0)
      ||  (mn_additem (menu, "init",     0, mcb_init,    0) != 0)
      ||  (mn_additem (menu, "start",    2, mcb_start,   0) != 0)
      ||  (mn_additem (menu, "stop",     4, mcb_start,   0) != 0)
      ||  (mn_additem (menu, NULL,       0, 0,           0) != 0)
      ||  (mn_additem (menu, "view",     0, mcb_view,    0) != 0)
      ||  (mn_additem (menu, "redraw",   0, mcb_redraw,  0) != 0)
      ||  (mn_addtitle(menu, "settings", 0, 0,           0) != 0)
      ||  (mn_additem (menu, "grid",     1, mcb_grid,    0) != 0)
      ||  (mn_additem (menu, "params",   0, mcb_params,  0) != 0)
      ||  (mn_addtitle(menu, "help",     0, 0,           0) != 0)
      ||  (mn_additem (menu, "about",    0, mcb_about,   0) != 0)
      ||  (mn_addtitle(menu, NULL,       0, 0,           0) != 0))
        error(E_WIDGET);
      mn_resize (menu, INITXEXT);   /* set width of menu bar */
      mn_visible(menu, MN_ITEMS, 3);/* show/hide      menu items */
      mn_enable (menu, MN_ITEMS, 3);/* enable/disable menu items */

    Кусок кода из программы http://www.borgelt.net/doc/somd/somd.html для визуализации SOM. Эпичная проверка условий!

    betastat, 04 Июня 2012

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