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

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

    +164

    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
    class Cmd
    {
    private:  /* ... */
    protected: /* ... */
    public:
    	virtual void Assign(Cmd *Source) {}
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class UARTCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	TypeCommand TypeCmd;
    public:
    	virtual void Assign(Cmd *Source) { /* .1. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class TRANSITCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	unsigned short FNumb;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .3. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class ASKCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	byte FidFrom;
    	byte FTimeR;
    	unsigned short FSID;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .4. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class RESPCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	byte FidFrom;
    	byte FTimeR;
    	unsigned short FSID;
    
    	byte FidResp;
    	unsigned short FCRCResp;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .4. */ /* .5. */ }
    	/* ... */
    };

    Сие чудо я должен реализовывать! Так сказать, привести в порядок код.

    P.S. Первоначальный вариант выглядит в разы лучше.
    P.P.S. /* .1. */ - обозначает часть кода

    sanchousf, 30 Августа 2010

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $ix=$_POST['danue'];
    
    if(isset($_POST['danue'])){
    
    $reyd="INSERT INTO `NOVOSTI` (`CONNTEKT`) VALUES ('{$ix}')";
    
    $rido=mysql_query($reyd) or die ("no dannuch");
    
    header ('location: index.php');}

    SunnyMagadan, 25 Августа 2010

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

    +83

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    [code=java]
    try {
          Folder folder = openFolder();
          processFolder(folder);
        } catch (MessagingException ex) {
          Folder folder = openFolder();
          processFolder(folder);
        }
    [/code]

    Если IMAP временно недоступен -- программа попробует снова. Если со второго раза не получилось -- тогда все.
    Жаль, что попытки всего две, а не восемь. Было бы круто.

    Этот код работал в живом проекте.

    Анонимус, 24 Августа 2010

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

    +157

    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
    Часть 1
    =====================================
    foreach ($_POST['massive'] as $key => $val)
    {
    @mysql_query("INSERT INTO table VALUES (NULL,'".$val."'");
    } 	
    ======================================
    Часть 2
    ======================================
    if (!empty($_POST['massive'])/*&&is_array($_POST['massive']) для любителей пожестче=)*/)
    {
    //Так мы точно знаем что нам что-то передали(не выскочит нотис).
    //Далее надо сформировать правильный запрос. Никогда, НИКОГДА нельзя делать кучу инсертов циклом, т.к. скорее всего это закончиться смертью сервера.
    //А сделать как-нить так
    
    foreach ($_POST['massive'] as $key => $val)
    {
     $query.="('".mysql_real_escape_string($val)."'),"; //Cделаем заготовку для запроса, попутно параметр экранируется, что бы злобные хакеры не подсунули нам кавычку и прочую гадость.
    }
    $query= 'INSERT INTO table VALUES'.substr($query, 0, -1).';';//Обрежем последнюю лишнюю запятую, и в итоге получим запрос вида INSERT INTO table VALUES (),(),()..();
    if (!mysql_query($query)) //Скажу по секрету, что ставить собаку это моветон.
    {
     print "Упс, что-то сломалось";
     print mysql_error();
    }else {print "Вот и все"}
    ==========================================

    Вобщем, увидел на одном форуме часть 1.
    Будучи в хорошем настроении решил поправить. И Выдал часть 2, прямо вот в форуме. Думал отправить.. Но попахивает же, да?

    vitaly, 23 Августа 2010

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

    +120

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    string makesig(string mid, string apiid, string method, string secret, string[] param)
            {
                string[] fullparams = new string[] { "api_id=" + apiid, "method=" + method, "v=3.0", "format=JSON" };
                string methodparams = String.Join("©", param);
                string fullparams_j = String.Join("©", fullparams);
                string fpr = String.Join("©", new string[] { fullparams_j, methodparams });
                string[] fpr_s = fpr.Split(new char[] { Convert.ToChar("©") });
                Array.Sort(fpr_s);
                fpr = String.Join("", fpr_s);
                string last = String.Concat(mid, fpr, secret);
                return getMd5Hash(last);
            }

    Так люди делают подпись для запроса к API ВКонтакте

    A1mighty, 19 Августа 2010

    Комментарии (16)
  7. Perl / Говнокод #3972

    −117

    1. 1
    2. 2
    if ( $src =~ /^(.+)$/ ) { $src = "$1"; }
    if ( $dst =~ /^(.+)$/ ) { $dst = "$1"; }

    Еще один вариант проверки на непустую строку.

    mrtaryk, 13 Августа 2010

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

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    function Logika($f)
    {
            $t=($f=true) ? true : false
            switch($t)
            {
                  case true:  $return=1; break;
                  case false: $return=0; break;
                  default: $return;break;
            }
            return $return;
    }

    Да-да-да, про тернарный было много раз, просто это особенно впечатлило.

    scalar4eblo4no, 09 Августа 2010

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

    +151

    1. 1
    $o = ($o < 0) ? 0 : $o;

    Оооо, как меня задолбал такой код

    sogekoder, 08 Августа 2010

    Комментарии (16)
  10. JavaScript / Говнокод #3841

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function create (char, repeat) {
    var string = '';
    while (repeat--) string += char;
    return string;
    }

    Заполняем строку одинаковыми символами

    eval, 01 Августа 2010

    Комментарии (16)
  11. Java / Говнокод #3818

    +64

    1. 1
    reader = new CSVReader(new BufferedReader(new InputStreamReader(new FileInputStream(csvFile), "UTF-8")), Config.getCSVDelimiter());

    Хорошо что файл ещё не зазипован...

    tinynick, 29 Июля 2010

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