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

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

    +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
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    //Search from title,content,category,address,zipcode,city
        if ($s_for !== '' && $s_cat !== '' && $s_to !== '') {
            $query = "SELECT *
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->term_relationships
                ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
                LEFT JOIN $wpdb->postmeta 
                ON $wpdb->posts.ID = $wpdb->postmeta.post_id
                WHERE
                $wpdb->posts.post_status = '$cc_post_status'
                AND $wpdb->posts.post_type = '$cc_post_type'
                AND ($wpdb->posts.post_title LIKE '%$s_for%'
                OR $wpdb->posts.post_content LIKE '%$s_for%')
                AND (($wpdb->postmeta.meta_key = '$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
                OR ($wpdb->postmeta.meta_key = '$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
                OR ($wpdb->postmeta.meta_key = '$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
                AND $wpdb->term_relationships.term_taxonomy_id = {$s_cat}
                GROUP BY ID {$limit}";
            //Search from title,content
        } elseif ($s_for !== '' && $s_cat == '' && $s_to == '') {
            $query = "SELECT *
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->term_relationships
                ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
                INNER JOIN $wpdb->terms
                ON $wpdb->term_relationships.term_taxonomy_id = $wpdb->terms.term_id
                WHERE
                $wpdb->posts.post_status = '$cc_post_status' AND post_type = '$cc_post_type' 
                AND ($wpdb->terms.name = '$s_for' or post_title like '%$s_for%' or post_content like '%$s_for%') 
                GROUP BY ID {$limit}";
            //Search from title,content and category
        } elseif ($s_for !== '' && $s_cat !== '' && $s_to == '') {
            $query = "SELECT $wpdb->posts.*
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->term_relationships
                ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
                WHERE
                $wpdb->posts.post_type = '$cc_post_type'
                AND 
                $wpdb->posts.post_status = '$cc_post_status'
                AND
                ($wpdb->posts.post_title LIKE '%$s_for%' OR $wpdb->posts.post_content LIKE '%$s_for%')
                AND
                ($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
                GROUP BY ID {$limit}";
            //Search from category,zip,address and city
        } elseif ($s_for == '' && $s_cat !== '' && $s_to !== '') {
            $query = "SELECT $wpdb->posts.*
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->postmeta
                ON $wpdb->posts.ID = $wpdb->postmeta.post_id
                INNER JOIN $wpdb->term_relationships
                ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
                WHERE
                $wpdb->posts.post_type = '$cc_post_type'
                AND $wpdb->posts.post_status = '$cc_post_status'
                AND
                ($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
                AND (($wpdb->postmeta.meta_key ='$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
                OR ($wpdb->postmeta.meta_key ='$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
                OR ($wpdb->postmeta.meta_key ='$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
                GROUP BY ID {$limit}";
            //Search from category
        } elseif ($s_for == '' && $s_cat !== '' && $s_to == '') {
            $query = "SELECT $wpdb->posts.*
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->term_relationships
                ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
                WHERE
                $wpdb->posts.post_type = '$cc_post_type'
                AND $wpdb->posts.post_status = '$cc_post_status'
                AND
                ($wpdb->term_relationships.term_taxonomy_id = {$s_cat})
                GROUP BY ID {$limit}";
            //Search from address,city and zipcode
        } elseif ($s_for == '' && $s_cat == '' && $s_to !== '') {
            $query = "SELECT $wpdb->posts.*
                FROM
                $wpdb->posts
                INNER JOIN $wpdb->postmeta
                ON $wpdb->posts.ID = $wpdb->postmeta.post_id
                WHERE
                $wpdb->posts.post_type = '$cc_post_type'
                AND $wpdb->posts.post_status = '$cc_post_status'                                  
                AND (($wpdb->postmeta.meta_key ='$cc_meta_address' AND $wpdb->postmeta.meta_value LIKE '%$s_to%')
                OR ($wpdb->postmeta.meta_key ='$cc_meta_city' AND $wpdb->postmeta.meta_value = '$s_to')
                OR ($wpdb->postmeta.meta_key ='$cc_meta_zipcode' AND $wpdb->postmeta.meta_value = '$s_to'))
                GROUP BY ID {$limit}";
            //Search from tags,title,content and zipcode,city,address
        } elseif ($s_for !== '' && $s_cat == '' && $s_to !== '') {
    
        // And so on .... until all possible combinations of arguments

    Classicraft wordpress theme ... luckily he had only 3 arguments :D

    alex_123, 09 Мая 2015

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

    +139

    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
    //Башня хаханойская
    #include <iostream>
    #include<ctime>
    #include<math.h>
    
    using namespace std;
    int count=0;
    void hanoi_towers(int quantity, int from, int to, int buf_peg)   
    {
    int mass[10];                                                       
    if (quantity != 0)
    {
    hanoi_towers(quantity-1, from, buf_peg, to);
     for (int i = 0; i < quantity; i++) {
    mass[i]=1+rand()%quantity;
    cout <<" ["<<i<<"]="<<mass[i]<<endl;}
    cout <<"S kol'ca # "<< from << " na kol'co # " << to << endl;
    hanoi_towers(quantity-1, buf_peg, to, from);
     count++;
    }
    }
    
    int main()
    {
    int mas[10];
    		int start_peg = 1, destination_peg=3, buffer_peg=2, plate_quantity,p;
    
    		cout << "Koli4estvo discov:" << endl;
    		cin  >> plate_quantity;
    	   for (int i = 0; i < plate_quantity; i++) {
    	   mas[i]=i;
    		cout <<"1 massiv=["<<i<<"]="<<mas[i]<<endl;}
    		hanoi_towers(plate_quantity, start_peg, destination_peg, buffer_peg);
    			 cout<<"Kol. iteracui  = "<<count<<endl;
    			  p=pow(2.0,plate_quantity)-1 ;
    			 cout<<"Po formule ="<<p<<endl;
    for (int i = 0; i < plate_quantity; i++) {
    cout <<"3 massiv=["<<i<<"]="<<mas[i]<<endl;
    }
    getchar();
    getchar();
    }

    //Башня хаханойская

    ebywku, 07 Мая 2015

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

    +142

    1. 1
    2. 2
    3. 3
    $("input[name=remarks[]][type=checkbox]:checked").each(function(){
    ....
    })

    Что бывает когда начинают "программировать" на jquery

    Vasiliy, 29 Апреля 2015

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

    +141

    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
    public static void main(String[] args)
        {
            int[] array = {1,2,3};
            permure(array, array.length);
        }
    
        private static void permure(int[] arr, int size)
        {
            if(size < 2){
                System.out.println(Arrays.toString(arr));
            }else {
                for(int k = 0; k < size; k++){
                    swap(arr, size - 1, k);
                    permure(arr, size - 1);
                }
            }
    
        }
    
        private static void swap(int[] arr, int index0, int index1)
        {
            int tmp = arr[index0];
            arr[index0] = arr[index1];
            arr[index1] = tmp;
        }

    Изначально задумывалось чтобы код генерил все возможные варианты перестановок чисел в массиве,но делает ровно половину перестановок.

    Danneborg, 23 Апреля 2015

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

    +142

    1. 1
    2. 2
    <?php
    require_once dirname(dirname(dirname(dirname(dirname(__FILE__))))) . '/lib/cache/MCache.php';

    Без комментариев =)

    newx, 22 Апреля 2015

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

    +143

    1. 1
    if (($logons_result > 0) && ($logons_result < 2)) {

    шаманство

    simplycrazy, 20 Апреля 2015

    Комментарии (4)
  8. C# / Говнокод #18022

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public int[] GetIntVideoAll(int videoCount)
          {
              List<int> listOfIntsVideo = new List<int>();
              for (int i = 0; i < videoCount; i++)
              {
                  listOfIntsVideo.Add(i);
              }
    
              return listOfIntsVideo.ToArray();
          }
    foreach (int item in mediaServ.GetIntVideoAll(videoCount))
               { ........}

    Вот так вот. Такие жемчужины встречаются с частотой примерно раз в 10 минут в коде одного проекта который я переписываю.

    visviva, 20 Апреля 2015

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    abstract class FR_Request_Common
    {
     
       use FR_Library_Class_ParamHandler
     
    }

    Я просто оставлю это тут

    Onotole, 10 Апреля 2015

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

    +101

    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
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    var
      Excel: OleVariant;
      Rows, Cols: integer;
      WorkSheet: OleVariant;
      DebugList: TStringList;
      I, j, CSeek: integer;
      R, ArrV: OleVariant;
      ObjData: TDataContainer;
      D: integer;
    begin
     {$IFDEF DEBUG}
      DebugList := TStringList.Create;
     {$ENDIF}
      try
        Excel := CreateOleObject('Excel.Application');
        Excel.Visible := false;
        Excel.Workbooks.Open[DocPath, 0, True];
        WorkSheet := Excel.ActiveWorkbook.ActiveSheet;
        R := Excel.Intersect(WorkSheet.UsedRange,
          WorkSheet.UsedRange.Offset[14, 0]);
        ArrV := R.Value;
        Rows := VarArrayHighBound(ArrV, 1);
        Cols := VarArrayHighBound(ArrV, 2);
        {$IFDEF DEBUG}
        DebugList.Add(Format('Количество ячеек в таблице = %d', [(Rows) * Cols]));
        DebugList.Add(Format('Rows = %d, Cols = %d', [Rows, Cols]));
        {$ENDIF}
        CSeek := 0;
        D := 1;
        for I := 1 to Rows do
        begin
          if (CompareStr(Trim(VarToStr(ArrV[I, 1])), Trim('Итого')) = 0) then
            Break;
          if (CompareStr(Trim(VarToStr(ArrV[I, 1])),
            Trim('отдел')) = 0) or
            (CompareStr(Trim(VarToStr(ArrV[I, 1])), Trim('10.05')) = 0) or
            (CompareStr(Trim(VarToStr(ArrV[I, 1])), Trim('10.06')) = 0) or
            (CompareStr(Trim(VarToStr(ArrV[I, 1])), Trim('10.09')) = 0) then
          begin
            CSeek := I + 2;
            Continue;
          end;
          if CSeek > I then
            Continue;
          for j := 1 to Cols do
          begin
            case j of
              1:
                begin
                  if VarToStr(ArrV[I, j]) <> '' then
                  begin
                    ObjData := TDataContainer.Create;
                    ObjData.Name := ArrV[I, j];
                  end;
                end;
              3:
                begin
                  if VarToStr(ArrV[I, j]) <> '' then
                    ObjData.InventoryNumber := GetInventoryNumber(ArrV[I, j]);
                end;
              10:
                begin
                  if (D mod 2 <> 0) then
                  begin
                    if VarToStr(ArrV[I, j]) <> '' then
                      ObjData.DataCount := ArrV[I, j];
                  end
                  else
                    ObjData.Cost := ArrV[I, j];
     
                  if (ObjData <> nil) and (ObjData.DataCount > 0) then
                  begin
                    FData.Add(ObjData);
                    DebugList.Add(ObjData.AsString);
                  end;
                end;
            end;
            Inc(D);
          end;
        end;
        {$IFDEF DEBUG}
        DebugList.Add('Objects created: ' + IntToStr(FData.Count));
        D:=1;
        for ObjData in FData.Items.Values do
           D := D + ObjData.DataCount;
        DebugList.Add('Total objects count: ' + IntToStr(D));
        DebugList.SaveToFile('C:\ExcelDebug.txt');
        {$ENDIF}
      finally
        {$IFDEF DEBUG}
        DebugList.Free;
        {$ENDIF}
        Excel.Quit;
      end;
    end;

    При разборе выхлопа из 1С в Excel - excel и формат выгрузки сделали всё, чтобы я люто наговнокодил-(

    Cynicrus, 08 Апреля 2015

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

    +166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public function isRequisitesCorrect()
        {
            switch (true) {
                case $this->isRequisitesSigned() :
                    return true;
                default:
                    return false;
            }
        }

    dimkich, 31 Марта 2015

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