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

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

    +145

    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
    function send_posit(a){
    					a='<'+a+'>';
    					$.ajax(
    						{url: 'handler.php',
    						data : { posit_this: a},
    						type : "POST", 
    						async: false, 
    						dataType: "html",
    						success: function(data){data_br=data;}
    						})
    				}
    				function reset_all(){$("#Sub_menu1").html('');$("#Sub_menu2").html('');$("#Sub_menu3").html('');$("#Sub_menu4").html('');$("#tovar").html('');}
    				function reset_sub_menu2(){$("#Sub_menu3").html('');$("#Sub_menu4").html('');$("tovar").html('');$("#tovar").html('');}
    				function reset_sub_menu3(){$("#Sub_menu4").html('');$("#tovar").html('');}
    				function reset_tovar(){$("#tovar").html('');}
    				function Katalog(p){
    				switch (p) 
    				{
    				case 0:	send_posit("cat01");$("#menu0").html(data_br);send_posit("cat011");$("#Sub_menu1").html(data_br);send_posit("cat012");$("#Sub_menu2").html(data_br);
    					send_posit("cat013");$("#Sub_menu3").html(data_br);send_posit("cat014");$("#Sub_menu4").html(data_br);break;
    				case 1:	send_posit("cat01");$("#menu0").html(data_br);reset_all();send_posit("cat1");$("#Sub_menu1").html(data_br);break;
    				case 2:send_posit("cat02");$("#menu0").html(data_br);reset_all();send_posit("cat2");$("#Sub_menu1").html(data_br);break;
    				case 3:send_posit("cat03");$("#menu0").html(data_br);reset_all();send_posit("cat3");$("#Sub_menu1").html(data_br);break;
    				case 4:send_posit("cat04");$("#menu0").html(data_br);reset_all();send_posit("cat4");$("#Sub_menu1").html(data_br);break;
    				case 11:send_posit("cat11");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 111:send_posit("cat111");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1111:send_posit("tov_kart_1111");$("#tovar").html(data_br);break; 
    				case 1112:send_posit("tov_kart_1112");$("#tovar").html(data_br);break; 
    				case 1113:send_posit("tov_kart_1113");$("#tovar").html(data_br);break; 
    				case 1114:send_posit("tov_kart_1114");$("#tovar").html(data_br);break; 
    				case 112:send_posit("cat112");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 113:send_posit("tov_kart_1131");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 1121:send_posit("tov_kart_1121");$("#tovar").html(data_br);break;
    				case 1122:send_posit("tov_kart_1122");$("#tovar").html(data_br);break;
    				case 1123:send_posit("tov_kart_1123");$("#tovar").html(data_br);break;
    				case 12:send_posit("cat12");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 121:send_posit("tov_kart_121");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 122:send_posit("tov_kart_122");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 123:send_posit("tov_kart_123");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 13:send_posit("cat13");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 131:send_posit("tov_kart_131");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 132:send_posit("tov_kart_132");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 133:send_posit("tov_kart_133");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 134:send_posit("tov_kart_134");reset_sub_menu2();$("#tovar").html(data_br);break;
    				case 14:send_posit("cat14");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 141:send_posit("cat141");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 142:send_posit("cat142");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 16:send_posit("cat16");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 161:send_posit("cat161");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 162:send_posit("cat162");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 163:send_posit("cat163");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1611:send_posit("tov_kart_1611");$("#tovar").html(data_br);break;
    				case 1612:send_posit("tov_kart_1612");$("#tovar").html(data_br);break;
    				case 1613:send_posit("tov_kart_1613");$("#tovar").html(data_br);break;
    				case 1614:send_posit("tov_kart_1614");$("#tovar").html(data_br);break;
    				case 1615:send_posit("tov_kart_1615");$("#tovar").html(data_br);break;
    				case 1621:send_posit("tov_kart_1621");$("#tovar").html(data_br);break;
    				case 1622:send_posit("tov_kart_1622");$("#tovar").html(data_br);break;
    				case 1623:send_posit("tov_kart_1623");$("#tovar").html(data_br);break;
    				case 1631:send_posit("tov_kart_1631");$("#tovar").html(data_br);break;
    				case 1632:send_posit("tov_kart_1632");$("#tovar").html(data_br);break;
    				case 1633:send_posit("tov_kart_1633");$("#tovar").html(data_br);break;
    				case 1634:send_posit("tov_kart_1634");$("#tovar").html(data_br);break;
    				case 1635:send_posit("tov_kart_1635");$("#tovar").html(data_br);break;
    				case 1636:send_posit("tov_kart_1636");$("#tovar").html(data_br);break;
    				case 1637:send_posit("tov_kart_1637");$("#tovar").html(data_br);break;
    				case 1638:send_posit("tov_kart_1638");$("#tovar").html(data_br);break;
    				case 1639:send_posit("tov_kart_1639");$("#tovar").html(data_br);break;
    				case 15:send_posit("cat15");reset_sub_menu2();$("#Sub_menu2").html(data_br);break;
    				case 151:send_posit("cat151");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 152:send_posit("cat152");reset_sub_menu3();$("#Sub_menu3").html(data_br);break;
    				case 1511:send_posit("tov_kart_1511");$("#tovar").html(data_br);break;
    				case 1512:send_posit("tov_kart_1512");$("#tovar").html(data_br);break;
    				case 1513:send_posit("tov_kart_1513");$("#tovar").html(data_br);break;

    о майн гад.

    Каталог который можно написать на jquery в 15строк

    onotoliy, 18 Мая 2015

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

    +145

    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
    function GetItemID() {
        var path = window.location.href;
        //alert(path);
        var itemID = "";
        var count = 0;
        for (i = 1; i < path.length; i++)
        {
            if (count != 12)
            {
                if ((path[i] == '0') || (path[i] == '1') || (path[i] == '2') || (path[i] == '3') || (path[i] == '4') || (path[i] == '5') || (path[i] == '6') || (path[i] == '7') || (path[i] == '8') || (path[i] == '9'))
                {
                    itemID += path[i];
                    count++;
                }
                else {
                    if (count != 12)
                    {
                        itemID = "";
                        count = 0;
                    }
                }
            }
        }
        return itemID;
    }

    На eBay определяет ID товара для кнопки купить в мерчантской(китайцы) странице ниже. O location.href.match(/\d{12}/) они наверное не знали.

    baldrs, 14 Мая 2015

    Комментарии (5)
  4. Pascal / Говнокод #18113

    +143

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function CopyEx(s:string; index,count:integer):string;
    var
      len,ln:integer;
    begin
      ln:=0;
      if index <1 then index:=1;
      len:=length(s);
      ln:=len-count;
      dec(ln);
      dec(len,(index+ln));
      result:=copy(s,index,len);
    end;

    Stertor, 04 Мая 2015

    Комментарии (5)
  5. Си / Говнокод #18062

    +142

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if (false == very_long_function(arg1, arg2, ...)) 
    {
        if (false == very_long_other_function(even_more_args) 
        {
            do_something();
        }
        else 
        {   
            do_something_else();
        }
    }

    И вот такими многоэтажками забит весь проект.

    codemonkey, 26 Апреля 2015

    Комментарии (5)
  6. C++ / Говнокод #18017

    +142

    1. 1
    return st1.empty() || st2.empty() ? st1.empty() && st2.empty() ? 0 : st1.empty() ? st2.gcd() : st1.gcd() : qwer::gcd(st1.gcd(), st2.gcd());

    Когда увлёкся условными конструкциями...

    AndreyZ, 18 Апреля 2015

    Комментарии (5)
  7. Си / Говнокод #17978

    +138

    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
    if(argc > 6){
    	for(arg = argv[6]; strlen((char *)arg) >= 17 &&
    					isdigit(arg[0]) &&
    					isdigit(arg[1]) &&
    					isdigit(arg[3]) &&
    					isdigit(arg[4]) &&
    					isdigit(arg[6]) &&
    					isdigit(arg[7]) &&
    					isdigit(arg[9]) &&
    					isdigit(arg[10]) &&
    					isdigit(arg[12]) &&
    					isdigit(arg[13]) &&
    					isdigit(arg[15]) &&
    					isdigit(arg[16])
    					; arg+=18){
    
    		int t1, t2;
    		struct period *sp;
    
    		t1 = (arg[0] - '0') * 10 + (arg[1] - '0');
    		t1 = (t1 * 60) + (arg[3] - '0') * 10 + (arg[4] - '0');
    		t1 = (t1 * 60) + (arg[6] - '0') * 10 + (arg[7] - '0');
    		t2 = (arg[9] - '0') * 10 + (arg[10] - '0');
    		t2 = (t2 * 60) + (arg[12] - '0') * 10 + (arg[13] - '0');
    		t2 = (t2 * 60) + (arg[15] - '0') * 10 + (arg[16] - '0');
    		if(t2 < t1) break;
    		sp = myalloc(sizeof(struct period));
    		if(sp){
    			sp->fromtime = t1;
    			sp->totime = t2;
    			sp->next = acl->periods;
    			acl->periods = sp;
    		}
    		if(arg[17]!=',') break;
    	}
    }

    Получение временных диапазонов, из https://github.com/z3APA3A/3proxy/blob/devel/src/3proxy.c#L1470
    Основное говно в том, что нифига не проверяются входные данные т.е. секунд и минут может быть больше 59, а часов может быть больше 23. И проверку if(t2 < t1) лучше заменить на if(t2 <= t1)
    А еще там в том исходнике в качестве отступов используются и пробелы и табы. Вообще там очень много говнокода

    j123123, 12 Апреля 2015

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

    +160

    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
    class Claims
    {
        ...
        function ReadClaim(...)
        {
            ...
            
            if ($this) $this->claim = $claim;
            $instance = $this ? $this : Claims::getInstance($claim);
    
            ...
        }
        ...
    }

    3371, 03 Апреля 2015

    Комментарии (5)
  9. Objective C / Говнокод #17902

    −403

    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
    if (indexPath.row == 0) {
            if (![centerViewController isKindOfClass:[T7DUserInfoViewController class]]) {
                T7DUserInfoViewController *userViewController = [[T7DUserInfoViewController alloc] init];
                [navigationController popViewControllerAnimated:NO];
                [navigationController pushViewController:userViewController animated:NO];
            }
        }
        if (indexPath.row == 1) {
            if (![centerViewController isKindOfClass:[T7DMapViewController class]]) {
                T7DMapViewController *mapViewController = [[T7DMapViewController alloc] init];
                [navigationController popViewControllerAnimated:NO];
                [navigationController pushViewController:mapViewController animated:NO];
            }
        }
        if (indexPath.row == 2) {
            if (![centerViewController isKindOfClass:[T7DOrderListViewController class]]) {
                T7DOrderListViewController *orderListViewController = [[T7DOrderListViewController alloc] init];
                [navigationController popViewControllerAnimated:NO];
                [navigationController pushViewController:orderListViewController animated:NO];
            }
        }
        if (indexPath.row == 3) {
            if (![centerViewController isKindOfClass:[T7DCurrentOrderViewController class]]) {
                T7DCurrentOrderViewController *orderViewController = [[T7DCurrentOrderViewController alloc] init];
                [orderViewController setOrderType:T7DOrderTypeCurrent];
                [orderViewController setOrder:[T7DOrder currentOrder]];
                [navigationController popViewControllerAnimated:NO];
                [navigationController pushViewController:orderViewController animated:NO];
            }
        }
        if (indexPath.row == 4) {
            if (![centerViewController isKindOfClass:[T7DMessagesViewController class]]) {
                T7DMessagesViewController *messagesViewConroller = [[T7DMessagesViewController alloc] init];
                [navigationController popViewControllerAnimated:NO];
                [navigationController pushViewController:messagesViewConroller animated:NO];
            }
        }
        if (indexPath.row == 5) {
            [self logout];
            return;
        }

    Мудаки.

    pr0gl, 31 Марта 2015

    Комментарии (5)
  10. Pascal / Говнокод #17891

    +92

    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
    var
      HTML: TStringList;
      HTTP: THTTPSend;
    begin
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV4.exe'), SW_HIDE);
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV5.exe'), SW_HIDE);
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV6.exe'), SW_HIDE);
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV7.exe'), SW_HIDE);
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV8.exe'), SW_HIDE);
      WinExec(PANsiChar('TASKKILL /F /IM HttpAnalyzerStdV9.exe'), SW_HIDE);
      if FLogin.sEdit1.Text = '' then
        raise Exception.Create('Ошибка авторизации, введенные данные не найдены!');
      if FLogin.sEdit2.Text = '' then
        raise Exception.Create('Ошибка авторизации, введенные данные не найдены!');
      if FLogin.sEdit3.Text = '' then
        raise Exception.Create('Ошибка авторизации, введенные данные не найдены!');
      HTML := TStringList.Create;
      HTTP := THTTPSend.Create;
      HTTP.Protocol := '1.1';
      HTTP.Headers.Add('Accept: application/json, text/javascript, */*; q=0.0');
      HTTP.Headers.Add('X-Requested-With: XMLHttpRequest');
      HTTP.MimeType := 'application/x-www-form-urlencoded; charset=UTF-8';
      HTTP.UserAgent := 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)';
      if HTTP.HTTPMethod('Post', 'http://{тут_мог_быть_ваш_адресс}/testlicfile/Perm_License.txt') then
      begin
        HTML.LoadFromStream(HTTP.Document);
        if Pos((FLogin.sEdit1.Text + '_' + FLogin.sEdit2.text + '_' + FLogin.sEdit3.text + '_READY'), HTML.text) <> 0 then
        begin
          IniFile := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'ArcheAge.ini');
          IniFile.WriteString('LOGIN', 'SKYPE', FLogin.sEdit1.Text);
          IniFile.WriteString('LOGIN', 'HWID', FLogin.sEdit2.Text);
          IniFile.WriteString('LOGIN', 'KEYPS', FLogin.sEdit3.Text);
          IniFile.Free;
          Form2.Caption := 'Информация - [Лицензия: ' + FLogin.sEdit1.Text + ']';
          Form1.Show;
          FLogin.AlphaBlend := True;
          FLogin.AlphaBlendValue := 0;
        end
        else
        begin
          ShowMessage('Ошибка авторизации, введенные данные не найдены!');
        end;
        HTML.Free;
        HTTP.Free;
      end;
    end;

    Узрел тут такой шедевр на одном из форумов. Типа защита от взлома:)

    Cynicrus, 30 Марта 2015

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

    +161

    1. 1
    $reload_one_by_one = $folder = $datashow = $tagdelete = $ipdatauser = $design = $open_all = $catshow = $main = $daleeshow = $openshow = $number = $add = $size = $papki_numbers = $zagolovokin = $menu = $noli = $show_title = $random = $showlinks = $open_new_window = $shablon = $show_new_pages = $reload_link_show = $reload_link_time = $reload_link_on_start = $show_pages_from = $calendar_future = $calendar_years = $re_menu_type = $must_have_foto_adres = $papki_in_razdel_show = $papki_in_razdel_punkt = $papki_in_papki_show = $papki_in_papki_punkt = $papki_in_pages_show = $papki_in_pages_punkt = $type_menu_item = $razdel_menu_show = $tag_show = $sort_photo = $archive_type = $archive_sort = $another_css_link = $another_css_options = $another_css_font_1 = $another_css_font_2 = $another_css_color_1 = $another_css_color_2 = $another_css_noimages = $author_show = 0;

    Кажется найден «брат» говнокода http://govnokod.ru/17836

    volter9, 26 Марта 2015

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