1. PHP / Говнокод #11310

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if ($_GET['where'] != '') {
    	if ($_GET['where'] != '') {
    		die ("<meta http-equiv='refresh' content='0; url=".$page."?where=".$_GET['where']."'>");
    	} else {
    		die ("<meta http-equiv='refresh' content='0; url=".$page."?pid=".$_GET['pid']."'>");
    	}
    } else {
    	die ("<meta http-equiv='refresh' content='0; url=".$page."?pid=".$_GET['pid']."'>");
    }

    Интересно, в каком случае выполнится второй die()?

    domaster, 27 Июня 2012

    Комментарии (35)
  2. PHP / Говнокод #11309

    +71

    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
    # Разбор time()
    function GetTime( $time ) {
    	
    	# Получение массива из элементов даты
    	$time = getdate( $time );
    	
    	# Все элементы с ведущими нулями
    	$d = ( $time['mday'] > 9 ) ? $time['mday'] : '0' . $time['mday'];
    	$w = ( $time['mon'] > 9 ) ? $time['mon'] : '0' . $time['mon'];
    	$y = $time['year'];
    	$h = ( $time['hours'] > 9 ) ? $time['hours'] : '0' . $time['hours'];
    	$m = ( $time['minutes'] > 9 ) ? $time['minutes'] : '0' . $time['minutes'];
    	$s = ( $time['seconds'] > 9 ) ? $time['seconds'] : '0' . $time['seconds'];
    	
    	# Сборка и возврат результата
    	return $d . '/' . $w . '/' . $y . '&nbsp;' . $h . ':' . $m . ':' . $s;
    }

    Про date() явно не в курсе...

    nethak, 27 Июня 2012

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

    −29

    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
    calculateSomething(int n){
    	float* x = new float[n];
    	/*do smth*/
    	
           if ( /*validation*/ ) {
    		delete[] x;
    		return;
    	}
    	
    	float* y = new float[n];
    	/*do smth*/
    	
    	if ( /*validation*/ ) {
    		delete[] x;
    		delete[] y;
    		return;
    	}
    	
    	float* z = new float[n];
    	/*next step*/
    	
    	if ( /*smth goes wrong*/ ) {
    		delete[] x;
    		delete[] y;
    		delete[] z;
    		return;
    	}
    
            /*more calculations with validation*/
    
           delete[] x;
           delete[] y;
           ...
           /*more delete[]*/
           
           return;
    }

    Принципиальная схема говногода, найденного на просторах сети.

    interested, 26 Июня 2012

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

    +129

    1. 1
    2. 2
    3. 3
    4. 4
    if (!File.Exists(filePath))
    {
    	throw new FileNotFoundException("File is not a file!", filePath);
    }

    Вот такая вот философия шестилетней давности. Собственное говно :)

    anmiles, 26 Июня 2012

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

    +62

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function find( &$db, $id) {
    		$statement = Contact::findStatement() . " WHERE id = $id";
    		$dbResult = ActiveRecord::abstractFind( $db, $statement);
    		foreach ($dbResult as $dbRow) {
    			return Contact::load( $db, $dbRow);
    		}
    		return null;
    	}

    shmaltorhbooks, 26 Июня 2012

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

    +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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    <?php
    if(!$this->model_forum->community_once(array('id'=>$community))) {
       	 echo file_get_contents($_SERVER['DOCUMENT_ROOT'].'/style/templates/mobile/no_community.tpl');
    } 
    
    else if(isset($_GET['topic']) && is_numeric($_GET['topic']) && $topic = $this->model_forum->topic_once(array('id'=>(int)$_GET['topic']))) {
       	 $tpl =  file_get_contents($_SERVER['DOCUMENT_ROOT'].'/style/templates/mobile/add_response_topic.tpl');
    	 $tpl =  str_replace('{topic_id}', (int)$_GET['topic'] ,$tpl);
    	 echo $tpl;
    }
    
    else {
        $tpl = file_get_contents($_SERVER['DOCUMENT_ROOT'].'/style/templates/mobile/add_topic.tpl');
        $tpl = str_replace('{community}',$community, $tpl);
    	$tpl = str_replace('{topic_date_closing}', '23', $tpl);
    	echo $tpl;
    	
    } ?>

    оцените на предмет гавнокода

    nepster, 26 Июня 2012

    Комментарии (14)
  7. Assembler / Говнокод #11302

    +184

    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
    __declspec (naked) INT16U getWordOfCPUFlags(void)
    {
    	_asm
    	{
    		pushf;
    		xor eax, eax;
    		pop ax;
    		ret;
    	}
    }
    
    void setWordOfCPUFlags(const INT16U WordOfCPUFlag)
    {
    	_asm
    	{
    		push WordOfCPUFlag;
    		popf;
    	}
    }
    
    bool getCPUTraceFlag(void)
    {
    	return 0 != (getWordOfCPUFlags() & 0x100);
    }
    
    void setCPUTraceFlag(const bool CPUTraceFlag)
    {
    	const INT16U MaskOfTraceFlag=((INT16U)CPUTraceFlag)<<8;
    	//setWordOfCPUFlags( (getWordOfCPUFlags() and ~MaskOfTraceFlag) ^ MaskOfTraceFlag);
    	if(CPUTraceFlag)
    		setWordOfCPUFlags( getWordOfCPUFlags() | MaskOfTraceFlag);
    	else
    		setWordOfCPUFlags( getWordOfCPUFlags() & ~MaskOfTraceFlag);
    }

    Видимо автору кода строка 29 показалась слишком сложной.

    HaskellGovno, 26 Июня 2012

    Комментарии (39)
  8. Java / Говнокод #11301

    +83

    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
    private String toHTML(String unicode)
        {
            String output = "";
    
            char[] charArray = unicode.toCharArray();
    
            for (int i = 0; i < charArray.length; ++i)
            {                        
                if ((int)charArray[i]>255)
                {
                    String s = ""+Integer.toHexString(charArray[i]);
                    switch (s.length())
                    {
                        case 1: s="\\u000"+s; break;
                        case 2: s="\\u00"+s; break;
                        case 3: s="\\u0"+s; break;
                        case 4: s="\\u"+s; break;
                        default: throw new RuntimeException( s +" is tool long to be a Character");
                    }
                    output += s;
                }
                else
                {
                    output += charArray[i];
                }
                
            }
            return output;
        }

    Эпичнейший говнокод! На серваке top показывает нагрузку 10-12. 3000 пользователей, 100 нод, интеграция с SAP, который пачками проводит документы и выдаёт цены, отчёты по остаткам и т.п. И всё это, как оказалось, капля в море по сравнению с 5 человеками техподдержки, которые сидят в аяксовой консоле мониторинга, для которой HTTP-ответ экранируется данным шедевром. Без этого шедевра нагрузка держится в районе 2-3 даже при достаточно большой активности.

    konsoletyper, 26 Июня 2012

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

    +67

    1. 1
    $this->bgcolor = $bgcolor ? ($bgcolor <= 0xFFFFFF) ? ($bgcolor > 0xFFFFFF) ? 0xFFFFFF : $bgcolor : 0x000000 : 0xFFFFFF;

    FFFFFFFFFFFFFFFFFFFFFFF

    Razban_Guestov, 26 Июня 2012

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

    +72

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public function isAdmin() {
            $admins = Model::factory('User')->where('access_level_id', 1)->find_many();
            $ids = array();
            foreach($admins as $admin) {
                $ids[]= $admin->id;
            }
            return in_array($this->id, $ids) ? true : false;
        }

    Метод проверки на админе из модели пользователей. Не, ну а чо.

    mr.The, 26 Июня 2012

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