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

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

    +167.4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    $notch_notch_submit = $_POST['submit'];
    $notch_notch_adm_login = $_POST['adm_login'];
    $notch_notch_adm_pass = $_POST['adm_pass'];
    
    $notch_submit = htmlspecialchars($notch_notch_submit); 
    $notch_adm_login = htmlspecialchars($notch_notch_adm_login); 
    $notch_adm_pass = htmlspecialchars($notch_notch_adm_pass);
    
    $submit = strip_tags($notch_submit);
    $adm_login = strip_tags($notch_adm_login);
    $adm_pass = strip_tags($notch_adm_pass);

    Суперзащита о_О

    hiah, 03 Октября 2009

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

    +54.4

    1. 1
    2. 2
    ConfigEntry::Ptr generateConfigEntry (const QVariant &val);
    QVariant genetateQVariant(const ConfigEntry::Ptr& entry);

    Страшно представить, и эта опечатка месяц пролежала в основном дереве исходников, хорошо хоть приватная функция

    Sauron, 01 Октября 2009

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

    +76.3

    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
    Long orgId = 0L;
    try {
        orgId = Long.valueOf(textOrgId);
    } catch (Exception e) {
        orgId = 0L;
    }
    // ...
    Organization org = orgDAO.findById(orgId);
    if (org == null) {
        // не найдено? создать новую
        org = new Organization();
        // ...
    }

    Если с веба в поле textOrgId пришёл мусор, то создать новую организацию. Но перед этим всё равно поискать в базе несуществующий orgId=0.

    yvu, 28 Сентября 2009

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

    +159.1

    1. 1
    paramsObj.templateName = templateNewWindow.items.items[0].items.items[0].items.items[0].items.items[0].getValue();

    Получение значения ExtJS'ного контрола, который спрятан глубоко в дереве.

    stan, 22 Сентября 2009

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

    −179

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Выборка=Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
    	ФизЛицо=Выборка.Физлицо;
    	Состояние("Обробатывается - "+ФизЛицо.Ссылка);
    ...
    КонецЦикла;

    Если новичок порой может забыть указать реквизит ".Ссылка", где это требуется. То тут всё наоборот. Видать, чел настолько поднаторел, что только он знает, нахера тут ссылка. (про грамматику молчу)

    Kopchuga, 22 Сентября 2009

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

    +128.3

    1. 1
    List<estExecPeriod> lst = TEDManager.getExecPeriodByIDExecWork(budget.IdBudget);

    iley, 22 Сентября 2009

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

    −92.1

    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
    Запрос.Текст = 
    "ВЫБРАТЬ
    |	СостояниеРаботниковОрганизаций.Регистратор,
    |	СостояниеРаботниковОрганизаций.ФизЛицо,
    |	СостояниеРаботниковОрганизаций.Организация,
    |	СостояниеРаботниковОрганизаций.Приказ,
    |	СостояниеРаботниковОрганизаций.Состояние,
    |	СостояниеРаботниковОрганизаций.Период
    |ИЗ
    |	(ВЫБРАТЬ
    |		СостояниеРаботниковОрганизаций.Регистратор КАК ДокументРегистратор
    |	ИЗ
    |		РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций
    |	ГДЕ
    |		СостояниеРаботниковОрганизаций.Период МЕЖДУ &ДатаНачала И &ДатаКонца
    |		И СостояниеРаботниковОрганизаций.Организация = &Организация
    |		И СостояниеРаботниковОрганизаций.ФизЛицо = &ФизЛицо
    |		И СостояниеРаботниковОрганизаций.Приказ = &Приказ) КАК ДокРегистратор
    |		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций
    |		ПО ДокРегистратор.ДокументРегистратор = СостояниеРаботниковОрганизаций.Регистратор";
    .

    Просто выбрать движения из регистра - это не круто.

    Kopchuga, 21 Сентября 2009

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

    +156.1

    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
    function CompletesGetTableOld($clist, $mid =0)
    {
      if(strlen($clist) or $mid > 0)
      {
        $com = CatalogComplsCostsGet(0, 0, $clist, $mid);
        $csz = sizeof($com['id']);
        if($csz > 0)
        {
            $param = CatalogComplParamsGet();
            $psz = sizeof($param);
            $tds = '';
            
            $cVals = CatalogComplParamValsGet(implode(",", $com['cid']));
            
            echo '
    		<table cellpadding="4" cellspacing="0" border="0" width="700" class="table-comp">
    		 <tr><td width="50%" class="first"></td>
           	';
            for($i = 0; $i < $csz; $i++)
     	    {
     	        echo '<td align="center">'.$com['name'][$i].'</td>';
     	        $tds .= '<td> &nbsp; </td>';
     	    }
            echo '</tr>';
            
            $prgrnm = '';
            for($i = 0; $i < $psz; $i++)
     	    {
     	        $data = false;
     	        $html = '';
     	        if($i==0||$param[$i]['gr_name']!=$prgrnm)
     	        {
    				$html='
    				<tr>
    					<td class="first"><br><b>'.$param[$i]['gr_name'].'</b></td>';for($ii = 0; $ii < $csz; $ii++)$html.='<td class="second" > &nbsp; </td>';
    					$html.= $tds.'
    				</tr>';
     	        }
     	        $html.= '
     	        <tr>
     	          <td class="first">'.$param[$i]['name'].'</td>';
     	        
     	        for($ii = 0; $ii < $csz; $ii++)
         	    {
         	        @$val = $cVals[$com['cid'][$ii]][$param[$i]['id']];
         	        if(isset($val) and strlen($val))
         	        {
         	            if($param[$i]['type'] == 'CH') 
         	            {
         	                if($val == 1)
         	                {
         	                    $html.= '<td class="second" align="center"><img src="/images/tochka.gif" ></td>'; 
         	                    $data = true;
         	                }
         	                else $html.= '<td class="second"> &nbsp; </td>';
         	                
         	            }
         	            else 
         	            {
         	                $html.= '<td class="second" align="center">'.$val.'</td>';
         	                $data = true;
         	            }
         	        }
         	        else $html.= '<td class="second"> &nbsp; </td>';
         	    }
         	    $html.= '</tr>';
         	    
         	    if($data) 
         	    {
         	        $prgrnm = $param[$i]['gr_name'];
         	        echo $html;
         	    }
     	    }
     	    
     	    echo '
     	     <tr><td width="50%" class="first"><b>????</b></td>';
     	    for($i = 0; $i < $csz; $i++)
     	    {
     	    	$cost = intval($com['cost'][$i]);
     	        if($cost > 1000000) $cost = '<nobr>'.substr($cost, 0, -6)." ".substr($cost, 1, -3).". ".substr($cost, 4).'</nobr> ???';
     	        elseif($cost > 100) $cost = '<nobr>'.substr($cost, 0, -3)." ".substr($cost, strlen($cost)-3).'</nobr> ???';
     	        else $cost = '';
         	        
     	        echo '<td class="second" align="center" height="30">'.$cost.'</td>';
     	    }
                   
            echo '</tr>
            </table>';
             
            return true;
        }
      }
       
      return false;
    }

    обратите внимание на переменную $data. долго и упорно собираем из кусочков $html, и только если $data истинно тогда выводим $html (примерно 5-10% случаев)

    gorky, 18 Сентября 2009

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

    +103.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public Parameter()
                {
                    _name = new String((char[])null);
                    Value = new String((char[])null);
                }

    Вот такой забавный метод инициализации пустой строки обнаружил в чужом коде 0_о

    samuilovaa, 15 Сентября 2009

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

    +156.2

    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
    // from views_bonus: grid.inc
    function theme_og_picture_grid($result, $column_count = 5) {
      $content = '<table class="og-picture-grid">';
      $count = 0;
      $total = db_num_rows($result);
      while ($user = db_fetch_object($result)) {
        $classes = 'og-picture-grid-item';
        if ($count < $column_count) {
          $classes .= ' first';
        }
        
        $item = '';
        if ($count % $column_count == 0) { 
          $content .= '<tr>'; 
        }
        $picture = theme('user_picture', $user);
        $name = theme('username', $user);
        $group_role = $user->is_admin ? t('admin') : '&nbsp;';
        $content .= "<td class=\"$classes\">$picture<div class=\"og-name\">$name</div>";
        if ($user->is_admin) {
          $txt = t('admin');
          $content .= "<div class=\"group-role\">$txt</div>"; 
        }
        $content .= "</td>\n";
    
        $count++;
        if ($count % $column_count == 0 || $count == $total) {
          $content .= '</tr>';
        }
      }
      $content .= '</table>';
      
      if ($total) {
        return $content;
      }
    }

    Меня ДУРЬпаловские финты просто бесят.

    типа тема

    paranoid, 14 Сентября 2009

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