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

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

    +155

    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
    $(function() {
    			$('#diametr').on('change', function() {
    				window.location = '/catalog/<?=$arResult['SECTION']['CODE']?>/'+this.value+'/';
    			});
    			
    			$('#type_s').on('change', function() {
    				$('#size_s').find('option:enabled').prop("disabled", true);
    				$('#size_s').find('option[data-prop-material='+$(this).find('option:selected').data('propMaterial')+']').prop("disabled", false).first().prop("selected", true);
    				$('#size_s').trigger('change')
    			});
    			
    			$('#type_p').on('change', function() {
    				$('#size_p').find('option:enabled').prop("disabled", true);
    				$('#size_p').find('option[data-prop-type='+$(this).find('option:selected').data('propType')+']').prop("disabled", false).first().prop("selected", true);
    				$('#size_p').trigger('change')
    			});
    			
    			
    			$(document)
    				.on('change', '#size_s, #size_p', function() {
    					
    					$('#selected_prop').val('csone_19_'+$(this).find('option:selected').data('propId'));
    				})
    				.on('click', '.but_sita', function() {
    					console.log($(this).parent().find('select').first());
    					$(this).parent().find('select').first().trigger('change');
    				});
    			$('.but_sita').last().trigger('click');
    			
    			$('#additional_spoiler').on('click', function(e) {
    				e.preventDefault();
    				$('#additional').fadeIn();
    			});
    		});

    UncaughtException, 29 Октября 2014

    Комментарии (1)
  3. JavaScript / Говнокод #16898

    +155

    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
    <FORM name="searchForm">
    
    .....
    <input onclick="customSubmitSearchForm()" type="button" value="Търси">
    ......
    </form>
    
    <script language="javascript">
    	function customSubmitSearchForm()
    	{
      	// may add additional checks here
      	alert('Няма данни по избраните критерии');
    	}
    </script>

    Bulgarian National Bank - http://www.bnb.bg/AboutUs/AUAdvancedSearch/index.htm

    CappY, 20 Октября 2014

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

    +155

    1. 1
    mail("[email protected]", "Тема письма", "Текст письма");

    Заметка из цикла "О вреде копипаста".
    Коллега попросил разобраться, отчего почта не приходит. Пять лет программирования на PHP, говорил он, когда устраивался к нам в контору... Вопрос один: как его вообще на работу взяли?..

    gmihalkov, 19 Октября 2014

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

    +155

    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
    //допускаются только перечисленные роли пользователей
            foreach ($roles as $role) {
                switch ($role) {
                    case 'admin':
                        $role_id=1;
                        break;
                    case 'teacher':
                        $role_id=2;
                        break;
                    case 'student':
                        $role_id=3;
                        break;
                    case 'parent':
                        $role_id=4;
                        break;
                    default:
                        $role_id=0;
                        break;
                }
    
                if ($this->usersmod->checkRole($user_id,$role_id)) return true;

    saksmt, 17 Октября 2014

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    $logics = $elementORM->getLogics();
    					if (count($logics > 0)) {
    						foreach($logics as $kLogic => $logic) { // logic
    							foreach($logic["conditions"] as $kCondition => $condition) { // condition

    limitium, 02 Октября 2014

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

    +155

    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
    <?php
    
    /**
     * Get category tree.
     * 
     * @param db $db
     * @return array
     */
    function getCategoryTree ($db) {
    	$query = $db->query('SELECT * FROM dle_category ORDER BY posi');
    	
    	if ($query->num_rows <= 0) {
    		return FALSE;
    	}
    	
    	$categories = $query->fetch_all(MYSQLI_ASSOC);
    	
    	$tree = array();
    	
    	foreach ($categories as $cat) {
    		if ($cat['parentid'] == '0') {
    			$tree[$cat['id']] = $cat;
    		}
    		else {
    			$tree[$cat['parentid']]['subcategories'][] = $cat;
    		}
    	}
    	
    	return $tree;
    }
    
    /**
     * Display categories.
     * Sorry for my french 'echo'.
     * 
     * @param array $category
     */
    function displayCategory ($category) {
    	$html = '';
    	
    	foreach ($category as $cat) {
    		$html .= '<li class="lonely "><a href="/">' . $cat['name'] . '</a>';
    		
    		if ($cat['subcategories']) {
    			$html .= '<span class="accordion"></span><ul>';
    			$html .= displayCategory ($cat['subcategories']);
    			$html .= '</ul>';
    		}
    		
    		$html .= '</li>';
    	}
    	
    	return $html;
    }
    
    // Getting categories
    $categories = getCategoryTree($db);
    
    if ($categories) {
    	echo displayCategory ($categories);
    }
    else {
    	echo '<li>Нету категорий</li>';
    }

    Мой говно модуль для DLE для отображения дерева категорий в меню.
    Почему DLE разработчики не могли это из коробки сделать? И почему там куча говнокода внутри? (на Англ. комментарии потому что привык)

    volter9, 17 Сентября 2014

    Комментарии (69)
  8. JavaScript / Говнокод #16706

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    ...
    $ (object.position).animate (data.point, { duration: data.instant ? 1 : 7 * distance,
        progress: data.instant ? function () {} : function (lol, progress) {
            object.position.y = data.point.y + Math.abs (Math.sin (progress * distance * 0.3));
        },
        always: data.instant ? function () {} : function () {
            object.position.y = data.point.y;
            ...

    как труъ, сделать if (data.instant) { ... } или и так покатит?

    makc3d, 16 Сентября 2014

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

    +155

    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
    if($numr>1){
        $i=0;
        while($row=mysql_fetch_object($q)){++$i;
    
            if($num==$i){
                return $row->id;
                break;
            }
        }
    }elseif($numr==1){
        $row=mysql_fetch_object($q);
        return $row->id;
    }else{
        return 0;
    }

    А на случай, если return() не сработает, у нас есть break

    Khvorostin, 16 Сентября 2014

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    <?php
    
    $data = file_get_contents("/path/to/photo.jpg"); // Read the file's contents
    $name = 'myphoto.jpg';
    
    force_download($name, $data);

    Я знаю конечно что это не говнокод, но последствия будут ужасными если не передать сразу же в функцию данные (т.к. PHP будет копировать содержимое дважды), представьте себе файл в 2МБ и много запросов, сервер капут в два раза быстрее.
    - https://ellislab.com/codeigniter/user-guide/helpers/download_helper.html

    volter9, 15 Сентября 2014

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

    +155

    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 function getByAllParameters()
        {
            $fields = array_keys($this->getFields());
            unset($fields[0]);
            sort($fields);
            if($this->getByConditions(array('id_user', 'status', 'card_bin', 'card_suffix', 'id_card_type', 'card_token'))){
                $processing = new Processing();
                $processing->id = $this->id_processing;
                return $processing->getByPrimary() && $processing->enabled == 1;
            }
            return false;
        }

    dimkich, 11 Сентября 2014

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