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

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

    −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
    $_LOADER['cmps']   = @file ($_LOADER['follow']);
    if ($_LOADER['cmps'])
        {
        unset($_LOADER['cmps'][0]);
        $_LOADER['count'] = count ($_LOADER['cmps']);
        while ($_LOADER['cmp'] < $_LOADER['count'])
            {
            $_LOADER['cmp']++;
            $_LOADER['cmp_path'] = GLISS_DIR.'cmpnnt/'.trim($_LOADER['cmps'][$_LOADER['cmp']]);
            require_once ($_LOADER['cmp_path']);
            }
        }

    Мой код пятилетней давности. Я раньше не искал легких путей, foreach для мажоров, while для тру кодеров!!11!

    mr-lekafe, 22 Февраля 2016

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

    −100

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    |ИЗ
    |	РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
    |			&ДатаНач,
    |			&ДатаКон,
    |			СчетДт В ИЕРАРХИИ (&СчетаРасчетов)
    |				И СчетКт В ИЕРАРХИИ (&СчетаВозврата)
    |				И Организация = &Организация
    |				И Активность = ИСТИНА
    |				И (НЕ СчетДт В ИЕРАРХИИ (&СчетаРасчетов))) КАК ХозрасчетныйОборотыДтКт

    БП 2.0, типовой отчет.

    OdinAss, 19 Февраля 2016

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

    −99

    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
    Типовая зуп 2.5 данные берутся из справочника  "Степени родства физических лиц" не предопределенные элементы. 
    
    
    
    	Если ТекущаяСтрока.Пол = Перечисления.ПолФизическихЛиц.Мужской Тогда
    		
    		Если СтепеньРодстваРебенка = "05 " ИЛИ СтепеньРодстваРебенка = "06 " Тогда // Сын // Дочь
    			
    			ТекущаяСтрока.Статус = СоответствиеСтепенейРодства["03"]; // Отец
    			
    		ИначеЕсли СтепеньРодстваРебенка = "42 " ИЛИ СтепеньРодстваРебенка = "43 " Тогда // Пасынок // Падчерица
    			
    			ТекущаяСтрока.Статус = СоответствиеСтепенейРодства["40"]; // Отчим
    			
    		КонецЕсли; 
    		
    	Иначе
    		
    		Если СтепеньРодстваРебенка = "05 " ИЛИ СтепеньРодстваРебенка = "06 " Тогда // Сын // Дочь
    			
    			ТекущаяСтрока.Статус = СоответствиеСтепенейРодства["04"]; // Мать
    			
    		ИначеЕсли СтепеньРодстваРебенка = "42 " ИЛИ СтепеньРодстваРебенка = "43 " Тогда // Пасынок // Падчерица
    			
    			ТекущаяСтрока.Статус = СоответствиеСтепенейРодства["41"]; // Мачеха
    			
    		КонецЕсли; 
    		
    	КонецЕсли;

    sandrohaos, 18 Февраля 2016

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

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php
    global $userinfo;
    ...
    $a_query = "select id,name,company,email,phone,url,type from user where login='" .
    								$_SESSION["se_login"] . "' and passwd='" .
    								$_SESSION["se_passwd"] . "' and status=1";
    $a_res = mysql_query($a_query);
    ...
    list($userinfo['id'],$userinfo['name'],$userinfo['company'],$userinfo['email'],$userinfo['phone'],$userinfo['url'],$userinfo['type']) = mysql_fetch_row($a_res);
    ...

    roman_gemini, 13 Февраля 2016

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

    0

    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
    class ConnectDB {
      protected static $_instance; 
      
      private function __construct() {
        $this->DB = new DBConnector();
      }
    
      private function __clone() {}
    
      private function __wakeup() {}
    
      public static function getInstance() {
        
        if (empty(self::$instance)) {
          self::$_instance = new self;   
        }
        return self::$_instance;
      }
    
    }

    Синглтон, который каждый рас создает новый объект

    Nemesys, 10 Февраля 2016

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

    +1

    1. 1
    bool isNoGoodCommentText = String.IsNullOrEmpty(this.txbxCommentCtrl.Text) || String.IsNullOrWhiteSpace(this.txbxCommentCtrl.Text);

    И действительно, is not good

    pipjaka, 05 Февраля 2016

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    $tdir = APPLICATION_PATH.'/../tmp/lv/'.md5(json_encode($_GET));
    if (!is_dir($tdir))
        mkdir($tdir, 0777, true);
    foreach(glob($lv.'/*') as $f) if(filemtime($f) < time() - 3600) rm_rf($f);

    Вот поэтому нотайсы должны быть фатальными

    DIX315, 04 Февраля 2016

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <?php
    	function generate_number_part($length=2) { 
    		$password = substr(preg_replace("/[^0-9]/", "", crypt(time())) .
    			preg_replace("/[^0-9]/", "", crypt(time())) .
    			preg_replace("/[^0-9]/", "", crypt(time())),
    			0, $length);
    			return $password;
    	}

    Сгенерировать пароль из ровно $length цифр... или меньше

    ruslanbes2, 03 Февраля 2016

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

    +4

    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
    #define RandomNumbers_count 16
    static unsigned char RandomNumbers[] =
    {
    	7, 167, 203, 54,
    	32, 78, 164, 112,
    	237, 182, 75, 96,
    	135, 13, 42, 27
    };
    static unsigned char CurrUrandPos = 0;
    void getURandom(void *buf, size_t size)
    {
    	if (size == 0)
    		return;
    	for (size_t i = 0; i < size; i++)
    	{
    		((char*)buf)[i] = RandomNumbers[CurrUrandPos];
    		CurrUrandPos = (CurrUrandPos + 1) % RandomNumbers_count;
    	}
    }

    Генератор псевдослучайных чисел: избавляемся от платформозависимого кода.

    tar_gz, 28 Января 2016

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

    −101

    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
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, ОсновноеПредставлениеВВидеКода = Ложь,
    											Знач СообщатьПользователюОбОшибкеВводаДанных = Истина)
    
    
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаАдресногоКлассификатора(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, НачальныйУровеньДетализации = 0, КонечныйУровеньДетализации = 5)
    
    
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, ОсновноеПредставлениеВВидеКода = Ложь,
    											Знач СообщатьПользователюОбОшибкеВводаДанных = Истина)

    Просто пара заголовков процедур из типовых конфигураций 1С (15 параметров, Карл, там 15 параметров!). Сопроводительные комментарии прилагаются.
    К слову сами процедуры занимают не более 20 строк, но самое забавное заключается в том, что некоторые параметры вообще не используются при работе процедуры.

    CMblCL, 25 Декабря 2015

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