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

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

    +47

    1. 1
    2. 2
    3. 3
    4. 4
    return PartnersProjectDaily::getInstance()->getSummary(
              array('date' => Utils::dateFormat($_POST['date']), 
                       'options' =>new StatSearchOptions($_POST['options']), 
                        'group' => $_POST['group']));

    Инкапсулировать параметризация полностью, руки не дошли?

    sl4mmer, 24 Июня 2012

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

    +141

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    foreach (glob('data/'.$year . "/unzip/*.txt") as $filename) {
    	    $name_file = explode(".",$filename);
    		
    		if (!file_exists($name_file[0].".out")){
    		// заливаем в jar
            exec('nohup java -jar "noaa.jar" ' . $filename . ' ' . $name_file[0] . '.out > /dev/null &', $log, $log1);
            echo "Insert " . $filename . " Complete!\n\r";
    		
    		usleep(10000);
    		}
    		else echo "You have uploaded this file already!\n\r";
        }

    Copy-Paste, 20 Июня 2012

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

    +62

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(isset($_GET['show_all'])){
    		set_query('show_all=','',true);
    		$show_all = true;
    		$Register->set('show_all', $show_all);
    }

    Найдено в WebAsyst Shop-Script.

    BiggestFox, 13 Июня 2012

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

    −33

    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
    CArray <CStyle *, CStyle *> m_aStyles;
    
    ...
    
    #define RETURN_TRUE  return *bOk = TRUE, S_OK
    #define RETURN_FALSE return *bOk = FALSE, S_FALSE
    #define RETURN_ERROR(E) \
    	return LastErrorCode = (ERROR_##E), *bOk = FALSE, S_FALSE
    
    ...
    
    // Создание нового стиля (пустого)
    STDMETHODIMP CEffector::AddStyle(VARIANT_BOOL *bOk)
    {
    	AFX_MANAGE_STATE(AfxGetStaticModuleState())
    	
    	CStyle *pNew = new CStyle;
    	if (pNew)
    	{
    		INT n = m_aStyles.GetSize();
    		m_aStyles.Add(pNew);
    		if (m_aStyles.GetSize() <= n)
    			RETURN_ERROR(MEMORY);
    	}
    	else
    		RETURN_ERROR(MEMORY);
    	RETURN_TRUE;
    }
    
    ...
    
    // Получение кода ошибки
    STDMETHODIMP CEffector::GetErrorCode(long *p)
    {
    	AFX_MANAGE_STATE(AfxGetStaticModuleState())
    
    	*p = LastErrorCode;
    	LastErrorCode = ERROR_NONE;
    	return S_OK;
    }

    Мой первый COM-объект.
    1) Если при успешном возвращении метод должен возвращать S_OK, то при ошибке... S_FALSE, наверное.
    2) Только в Дельфи почему-то возвращается не HRESULT, а параметр, помеченный [out]. Поэтому пришлось добавить аргумент *bOk.
    3) Интересно, что делает CArray, когда кончается память.

    Steve_Brown, 08 Июня 2012

    Комментарии (1)
  6. Куча / Говнокод #10555

    +141

    1. 1
    GOTO END;

    Copy-Paste, 04 Июня 2012

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

    −35

    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
    bool EvtDecay::isCharm(EvtId xid){
    EvtId d0    = EvtPDL::getId(std::string("D0"));
    EvtId d0bar = EvtPDL::getId(std::string("anti-D0"));
    EvtId dp    = EvtPDL::getId(std::string("D+"));
    EvtId dm    = EvtPDL::getId(std::string("D-"));
    EvtId d0h   = EvtPDL::getId(std::string("D0H"));
    EvtId d0l    = EvtPDL::getId(std::string("D0L"));
    EvtId dstp   = EvtPDL::getId(std::string("D*+"));
    EvtId dstm   = EvtPDL::getId(std::string("D*-"));
    EvtId ds0    = EvtPDL::getId(std::string("D*0"));
    EvtId ds0bar = EvtPDL::getId(std::string("anti-D*0"));
    EvtId dsp    = EvtPDL::getId(std::string("D_s+"));
    EvtId dsm    = EvtPDL::getId(std::string("D_s-"));
    EvtId dsstp  = EvtPDL::getId(std::string("D_s*+"));
    EvtId dsstm  = EvtPDL::getId(std::string("D_s*-"));
    EvtId ds0stp = EvtPDL::getId(std::string("D_s0*+"));
    EvtId ds0stm = EvtPDL::getId(std::string("D_s0*-"));
    
     std::vector<EvtId> Vid; Vid.clear();
     Vid.push_back(d0);
     Vid.push_back(d0bar);
     Vid.push_back(dp);
     Vid.push_back(dm);
     Vid.push_back(d0h);
     Vid.push_back(d0l);
     Vid.push_back(dstp);
     Vid.push_back(dstm);
     Vid.push_back(ds0);
     Vid.push_back(ds0bar );
     Vid.push_back(dsp );
     Vid.push_back(dsm );
     Vid.push_back(dsstp );
     Vid.push_back(dsstm );
     Vid.push_back(ds0stp );
     Vid.push_back(ds0stm );
    
     bool flag=true;
     for(int i=0;i<Vid.size();i++){ if(xid == Vid[i]) return flag;}
     return false;
    }

    физика высоких энергий, китайский говнокод

    blah, 04 Июня 2012

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

    −136

    1. 1
    СОСИТЕ МОЙ ХУЙ, УБЛЮДКИ!!!

    uiopqwertyasd, 29 Мая 2012

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

    +75

    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
    if (ereg("^/products/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/articles/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/articles/";
    }
    
    if (ereg("^/news/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/news/";
    }
    
    if (ereg("^/products/([0-9]+)/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $product_id = $m[2];
        $dn_page = "/products_detail/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $product_alias = $m[2];
        $dn_page = "/products_detail/";
    }
    // дальше начинается ад, не для слабонервных

    Я не буду показывать остальной код и рассказывать, что html в php пихать не красиво, ведь все мы индивидуальны и пишем как хотим. =)
    Кроме всего прочего, человек видимо очень стар и использует давно устаревшую функцию ereg, которая в версии 5.3.0 не имеет силы.
    На эту тему можно пофилософствовать и развести холивар, но мы же разумные люди и те кто пишет комментарии высшие программисты,
    ибо их слово это закон. По крайней мере вы так думаете)

    oooZinka, 29 Мая 2012

    Комментарии (1)
  10. SQL / Говнокод #10365

    −121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    case when z.nprc is null then
                                 case when ..........
                                      then  z.nsalary
                                      else  .........
                                 end * (nvl(sum(z.hour), 0)) * nvl(z.nprc, 0) / 100
                              else
                                 .........
                              end

    При условии если z.nprc is null то входим в кейс значение которого при любом раскладе будет умножено на ноль
    * (nvl(sum(z.hour), 0)) * nvl(z.nprc, 0) / 100 эквивалентно (nvl(sum(z.hour), 0)) * 0 / 100

    siv163, 25 Мая 2012

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

    −88

    1. 1
    2. 2
    3. 3
    4. 4
    NSString *error = [NSString stringWithFormat:@"Enter your %@%@%@", 
    											 [email length] ? @"" : @"email",
    											 [email length] || [password length] ? @"" : @" and ",
    											 [password length] ? @"" : @"password"];

    Дай дураку тернарный оператор - он и лоб расшибет.

    byss, 17 Мая 2012

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