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

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

    +151

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

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

    sogekoder, 08 Августа 2010

    Комментарии (16)
  3. 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)
  4. Java / Говнокод #3818

    +64

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

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

    tinynick, 29 Июля 2010

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

    +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
    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
    long GetMicroseconds();
    
    CTvoid cLog::GetTime (char * acLocal, time_t tTime)
    {
      struct tm   ltLocalTime;
      struct tm * ptLocalTime;
    
      tTime       = time (NULL);
      ptLocalTime = localtime_r (&tTime, &ltLocalTime);
    
      sprintf(acLocal,"%04d%02d%02d %02d%02d%02d-%06ld",
                       ptLocalTime->tm_year+1900,
                       ptLocalTime->tm_mon+1,
                       ptLocalTime->tm_mday,
                       ptLocalTime->tm_hour,
                       ptLocalTime->tm_min,
                       ptLocalTime->tm_sec,
                       GetMicroseconds());
    
    }
    
    long GetMicroseconds()
    {
        struct timeval timeVal;
    
        if (0 == gettimeofday( &timeVal, NULL ))
            return timeVal.tv_usec;
    
        return -1;
    }
    
    cLog::__Write(...)
    {
        /* ... */
        tTime          = time(NULL);
        GetTime (acDataTime, tTime);
        /* ... */
    }

    R&D дали задание добавить микросекунды ко всем таймстемпам в логах.
    сказано - сделано.
    ну ведь никто не говорил что таймстемпы должны быть еще и консистентными.

    ЗЫ ну и time() надо вызвать раза два-три - для надёжности.

    Dummy00001, 28 Июля 2010

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

    +167

    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
    <?php
    /*///////////////////////////////////////////////
    Эта функция инклюдит файл.
    Все, что этот файл отправляет на вывод,
    не уходит на вывод, а возвращется этой функция
    
    Для работы, функция использует функции ob, 
    которые работают с буфером, поэтому 
    использовать их для друхих целей нужно очень 
    аккуратно и только, если вы знаете, 
    как все это функционирует
    ///////////////////////////////////////////////*/
    
    function s_file ( /*string-путь к файлу*/ $path )
    {
        ob_start() ;              //Запускает буферизацию вывода 
        require ($path) ;         //Запускает файл по адрессу  
        return ob_get_clean () ;  //Возвращает содержимое буфера или FALSE при ошибке
    }
    
    ?>

    Berliner, 28 Июля 2010

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

    +170

    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
    star1.onmouseover = function () {
    star1.className = 'selected';
    }
    star1.onmouseout = function () {
    star1.className = 'not-selected';
    }
    star2.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    }
    star2.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    }
    star3.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    }
    star3.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    }
    star4.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    star4.className = 'selected';
    }
    star4.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    star4.className = 'not-selected';
    }
    star5.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    star4.className = 'selected';
    star5.className = 'selected';
    }
    star5.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    star4.className = 'not-selected';
    star5.className = 'not-selected';
    }

    Реализация звёздочек для рейтинга. При наведении мышкой на звёздочку все предшествующие ей звёздочки "загораются", при отведении — "потухают".

    eval, 25 Июля 2010

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

    −130

    1. 1
    sed '/^[:space:]*$/d'

    Проблема была: помимо пустых строк код ВНЕЗАПНО удалял строчки, состоящие из слова "as" (через этот код проходят SQL-скрипты).

    checkist, 23 Июля 2010

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

    +79

    1. 1
    long sourceBaseId = Long.parseLong(_depId+"00000000000000");

    konsoletyper, 12 Июля 2010

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

    +167

    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
    switch (columnType)
    {
        case 'first':
        {
            className = '.active-tooltip-first';
            break;
        }
    
        case 'second':
        {
            className = '.active-tooltip-second';
            break;
        }
    
        case 'third':
        {
            className = '.active-tooltip-third';
            break;
        }
    }

    Подобных перлов в данном проекте немало. По возможности вычищаю

    blaster999, 08 Июля 2010

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    if(!$_GET['q']) die(header("HTTP/1.0 404 Not Found"));
    $_GET['q'] = str_replace('sec/',false,$_GET['q']);
    $_GET['q'] = str_replace('/files/',false,$_GET['q']);
    pg_query('INSERT INTO download (date,file,ip) VALUES ('NOW()','" . $_GET['q'] . "', '{$_SERVER['REMOTE_ADDR']}')');

    принятие запроса из GET и запись в базу

    agent-0007, 07 Июля 2010

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