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

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

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    tr>
                                <td valign="top">
                                  <!--Содержание станици начинается тут-->
    <?
    if ($p)
       include "content/pages.php";
    elseif ($mod)
       include "content/".$mod.".php";
    ?>
                                </td>
                              </tr>

    Так происходит подключение модулей на одном крупном гос.портале Казахстана. $mod передаётся через get подключение происходит без всяких проверок

    NemoReturns, 08 Апреля 2011

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

    +985

    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
    public void ptsb()      {
                DateTime NW = System.DateTime.Now;
                int gh = NW.Day + 1; 
                int hj = NW.Month;   
                int NG = NW.Year;
                bool vg = System.DateTime.IsLeapYear(NW.Year); 
                if (hj==2)                     {
                    if (vg)                    {
                    if (gh > 29)                {
                        gh = 1;     
                        hj = 3;                    } } 
                    if (gh > 28)                {
                        gh = 1;    
                        hj = 3;     
                    } }
                else{
                    if (hj == 4)                   {
                        if (gh > 30)
                        {
                            gh = 1;
                            hj = 5;                      } }
                    else                {
                        if (hj == 6)                     {
                            if (gh > 30)                        {
                                gh = 1;
                                hj = 7;                        } }
                        else
                        {
                            if (hj == 9)                          {
                                if (gh > 30)                            {
                                    gh = 1;
                                    hj = 10;  
                                } }
                            else    {
                                if (hj == 11)                             {
                                    if (gh > 30)                                {
                                        gh = 1;
                                        hj = 12;                                  } }
                                else  {
                                    if (gh > 31)                                 {
                                        gh = 1;
                                        hj = hj + 1;
                                        if (hj == 13){
                                            hj = 1;
                                            NG = NG + 1;                                    }}}}}}}
         if (NW.Month < 10)         {
             if (NW.Day < 10)            {
                 d = "0" + NW.Month + "-" + "0" + NW.Day + "-" + NW.Year;
                 }
             else           {
                 d = "0" + NW.Month + "-" + NW.Day + "-" + NW.Year;         }     }
         else      {
                                    if (NW.Day < 10)                                 {
                                        d = NW.Month + "-" + "0" + NW.Day + "-" + NW.Year;        }
                                    else     {
                                        d = NW.Month + "-" + NW.Day + "-" + NW.Year;          }     }    
     if (hj < 10)       {
             if (gh < 10)           {
                 b = "0" + hj + "-" + "0" + gh + "-" + NG;         }
             else           {
                 b = "0" + hj + "-" + gh + "-" + NG;         }     }
         else      {
             if (gh < 10)         {
                 b = hj + "-" + "0" + gh + "-" + NG;        }
             else         {
                 b = hj + "-" +gh + "-" + NG;     }}}

    .....

    ded_efsey, 06 Апреля 2011

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

    −132

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Договор = Неопределено;
    
    ВыборкаДоговоров = Справочники.ДоговорыКонтрагентов.Выбрать();
    
    Пока ВыборкаДоговоров .Следующий() Цикл
          Если ВыборкаДоговоров.Ссылка = Документ.ДоговорКонтрагента Тогда
                Договор = ВыборкаДоговоров.Ссылка;
          КонецЕсли;
    КонецЦикла
    
    ТабДокумент.Параметры.Договор = Договор.Наименеование;

    Попросили стажера сделать печатную форму.

    A-tomic, 05 Апреля 2011

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

    +161

    1. 1
    <?if ((eregi('?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\]"(?:(?:\(?:[^\"\r\\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*))*)?;\s*',$_POST['admin_mail']))){echo'Ошибка в адресе почты';} ?>

    Проверка на правильность E-mail))) (Ссылка с форума php.ru)

    Пришлось укоротить регулярное выражение, что-бы вставить сюда, кто хочет взглянуть на оригинал, ссылка снизу.

    http://www.php.ru/forum/viewtopic.php?p=194512

    X-proger, 04 Апреля 2011

    Комментарии (18)
  6. Pascal / Говнокод #6196

    +103

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // Будет св. время - рефакторить данный кусок.
       typeArray[0] := (Char(Ord(Value[1])- 1)) + IntToStr(StrToInt(Value[2]) - 1);
       typeArray[1] := (Char(Ord(Value[1]) - 1)) + Value[2];
       typeArray[2] := (Char(Ord(Value[1]) - 1)) + IntToStr(StrToInt(Value[2]) + 1);
       typeArray[3] := Value[1] + IntToStr(StrToInt(Value[2]) - 1);
       typeArray[4] := Value[1] + IntToStr(StrToInt(Value[2]) + 1);
       typeArray[5] := (Char(Ord(Value[1]) + 1)) + IntToStr(StrToInt(Value[2]) - 1);
       typeArray[6] := (Char(Ord(Value[1]) + 1)) + Value[2];
       typeArray[7] := (Char(Ord(Value[1]) + 1)) + IntToStr(StrToInt(Value[2]) + 1);
    //-------!!!!!!!-----------

    Таки у погромистов тоже бывает полшестого!

    Govnocoder#0xFF, 02 Апреля 2011

    Комментарии (18)
  7. 1C / Говнокод #6127

    −91

    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
    Функция СравнитьЭлементыСправочника(Элемент1, Элемент2, фЗаписатьРазличия=0) Экспорт
    	Перем Рез;
    	Рез = 0;
    	Если (Элемент1 <> Элемент2) и (фЗаписатьРазличия=0) Тогда
    		Рез = 1;
    		Перейти ~М1;
    	КонецЕсли;
    	
    	// сначала проверим код и наименование 
    	Если (Элемент1.Код <> Элемент2.Код) Тогда
    		если фЗаписатьРазличия=1 Тогда
    			ЗаписьЖурналаРегистрации("изменен код с '"+СокрЛП(Элемент1.Код)+"' на '"+СокрЛП(Элемент2.Код)+"'","Справочники","Изменен реквизит справочника",Элемент1,2);
    		Иначе
    			Рез = 1;
    			Перейти ~М1;
    		КонецЕсли;	
    	КонецЕсли;
    	
    	Если Элемент1.Наименование <> Элемент2.Наименование Тогда
    		если фЗаписатьРазличия=1 Тогда
    			ЗаписьЖурналаРегистрации("изменено наименование с '"+СокрЛП(Элемент1.наименование)+"' на '"+СокрЛП(Элемент2.наименование)+"'","Справочники","Изменен реквизит справочника",Элемент1,2);
    		Иначе
    			Рез = 1;
    			Перейти ~М1;
    		КонецЕсли;	
    	КонецЕсли;	
    
    	// == тут было код который удалил автор поста	==
    
    ~М1:	
    	Возврат Рез;
    		
    КонецФункции

    Внезапно нашел такую функцию неизвестного автора :)

    CYFiVE, 30 Марта 2011

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

    +170

    1. 1
    2. 2
    3. 3
    4. 4
    void Draw_Pixel_Memset(UINT color,    //color = _RGB32BIT(a,r,g,b) ((b) + ((g) << 8) + ((r) << 16) + ((a) << 24))
                          UINT *buffer){ //buffer =  (UINT*) ddsd.lpSurface
      memset(buffer, color,8); 
    }

    Рисование пикселя с помощью meset()

    Подскажите, пожалуйста, почему при использование этой функции в 32 битном режиме точка получается какового то серого цвета.
    С другой стороны если использовать 8 битный режим то пиксель будет нужного цвета.

    Источник: http://www.gamedev.ru/code/forum/?id=145274

    TarasB, 19 Марта 2011

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

    +118

    1. 1
    2. 2
    3. 3
    4. 4
    string s=textBox1.Text,d="";
    if (s.lenght > 0)
    for (int i = 0; i < s.lenght- 1; i++)
    d += s[i];

    Код, присланный товарищем мне на проверку. Смех и грех - этот человек учится на третьем курсе политеха на специальности ИТ.

    SpeedyWizard, 17 Марта 2011

    Комментарии (18)
  10. PHP / Говнокод #5882

    +166

    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
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <title>Сайт Управления безопасности информационных технологий</title>
      </head>
      <body>
    <?php
    echo "You will be redirected after 5 seconds";
    sleep(5);
    header("Location: https://itsdhub");
    ?>
      </body>
    </html>

    Найдено в fido7.ru.php.
    Хотел сделать с помощью PHP редирект с таймаутом.

    Считал, что сначала пользователь увидит сообщение "You will be...", а через
    пять секунд сработает header. Hо получается так, что сообщение в браузере не
    выводится, а просто идет пятисекундная задержка с последующим срабатыванием
    header. Почему? Что я не так сделал?

    0__1, 04 Марта 2011

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

    +163

    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
    <title>
    <?php
    $t=$_SERVER['REQUEST_URI'];
    		        switch($t)
                    {
                    case '/':   echo "Канцтовары, бумага";
                      break;
                                           case '/shopping/':   echo "Каталог товаров: канцтовары, бумага, кресла, стулья, картриджи, хозтовары, офисная мебель";
                      break;
                                           case '/collection/':   echo "Коллекция рисунков: канцтовары, бумага, кресла, стулья, картриджи, хозтовары, офисная мебель";
                      break;
    
                                           case '/shopping/?id=1':   echo "Бухгалтерские бланки и книги";
                      break;
                                           case '/collection/?id=1':   echo "Коллекция бухгалтерских бланков и книг";
                      break;
                                           case '/shopping/?id=9':   echo "Каталог канцелярских товаров";
                      break;
            default: echo " Канцтовары, бумага, кресла и стулья, картриджи";
    
    }
    
    
    ?></title>

    Правлю самописку 0_о
    Формирование тайтла :)

    tranquillity, 03 Марта 2011

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