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

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

    +162

    1. 1
    $titl_e = str_replace("/","",implode("/", $tmp));

    Изменял вывод тайтлов в DLE. Минут через 10 заметил это... ))

    alexbel2404, 05 Октября 2011

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

    +157

    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
    foreach ( $category->getChildrensCategory ( $_GET['id']+0 ) as $value ) {
    
    	$count = count ( $db->fetchAll ( $db->select ()->from ( array ('I' => 'ItemShop' ) )
    		    		->join ( array ('O' => 'ItemOptions' ), 'I.1cId=O.1cId' )
    				->where ( 'I.Category IN (?)', array_merge ( array ($value ['Id'] ), $category->getAllChildrensCategory ( $value ['Id'] ) ) )
    				->where ( 'O.New = 1' )
    				->orWhere ( 'I.Category IN (?)', array_merge ( array ($value ['Id'] ), $category->getAllChildrensCategory ( $value ['Id'] ) ) )
    				->where ( 'O.Insert > ?', date ( 'Y-m-d', mktime ( 0, 0, 0, date ( 'm' ), date ( 'd' ) - $date, date ( 'Y' ) ) ) )
     				->group ( 'I.1cId' ) ) );
    
    
    	// ...
    
    }

    ZEND. Oh, wait... ZOMG!

    Мало того, что тащим в память результат запроса, только чтобы его пересчитать, так в процессе формирования запроса два раза (!) дёргаем тяжелую рекурсивную функцию, которая собирает всех детей ноды (да, да, структура в БД имеет только Parent Node, никаких Nested Nodes и пр.)

    sheershoff, 29 Сентября 2011

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

    +146

    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
    public class HelloWorld {
    
    	public static void main(String[] args) {
    		HelloWorld hw = new HelloWorld();;;;;;;;;;;;;;;;;;;;;;;;;
    		hw.doHw();
    	}
    	
    	public void doHw()
    	{
    		System.out.println("Hello, world");
    	}
    
    }

    Не совсем понимаю что это, но javac HelloWorld.java не выдал никаких ошибок. Возможно кто-то про это писал но все же..

    redenemy, 25 Сентября 2011

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

    +107

    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
    for i:=1 to 8 do
     begin
     case i of
     1 : begin
         xx := 0;
         yy := -LUCH_LEN;
         end;
     2 : begin
         xx := round(LUCH_LEN/sqrt(2));;
         yy := -round(LUCH_LEN/sqrt(2));;
         end;
     3 : begin
         xx := LUCH_LEN;
         yy := 0;
         end;
     4 : begin
         xx := round(LUCH_LEN/sqrt(2));;
         yy := round(LUCH_LEN/sqrt(2));;
         end;
     5 : begin
         xx := 0;
         yy := LUCH_LEN;
         end;
     6 : begin
         xx := -round(LUCH_LEN/sqrt(2));;
         yy := round(LUCH_LEN/sqrt(2));;
         end;
     7 : begin
         xx := -LUCH_LEN;
         yy := 0;
         end;
     8 : begin
         xx := -round(LUCH_LEN/sqrt(2));
         yy := -round(LUCH_LEN/sqrt(2));
         end;
     end;

    вот такое странное сочетание...

    dvdking, 23 Сентября 2011

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    # Если ошибка при авторизации
    begin_page("Вход");
    
    echo("<font color='red'>Ошибка при наборе логина или пароля</font>\n");
    
    }
    
    # Форма авторизации
    if (!headers_sent())
    begin_page("Вход");

    Поручили мне отрефакторить систему "Компьютерный класс" и баги в ней пофиксить.
    В login.php сразу же гениальнейшая конструкция.

    7ion, 23 Сентября 2011

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

    +163

    1. 1
    2. 2
    3. 3
    if (is_null($var) === false) {
    // не важно что
    }

    Встретил такой код в примерах одного Merchant-сервиса.
    Вот что значит простое сделать сложным.

    darth_ixis, 21 Сентября 2011

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

    +124

    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
    public object Data 
                {
                    get
                    {
                        return this._data;
                    }
                    set
                    {
                        (((value is byte ||
                           value is short ||
                           value is ushort ||
                           value is int ||
                           value is uint ||
                           value is long ||
                           value is ulong ||
                           value is decimal ||
                           value is double ||
                           value is float) && (DataType == JsonNodeDataType.Number)) ||
                         ((value is string) && (DataType == JsonNodeDataType.String)) ||
                         ((value is object[]) && (DataType == JsonNodeDataType.Array)) ||
                         ((value is Json) && (DataType == JsonNodeDataType.SubObject)) ||
                         ((value is bool) && (DataType == JsonNodeDataType.Boolean))).Assert();
                        this._data = value;
                    }
                }

    Изобретаю велосипед для работы с Json

    psina-from-ua, 20 Сентября 2011

    Комментарии (11)
  9. JavaScript / Говнокод #7876

    +170

    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
    function timeProceed() {
    	second++;
    	if (second >= 60) {
    		minute++;
    		second = 0;
    	}
    	if (minute >= 60) {
    		hour++;
    		minute = 0;
    	}
    	if (hour > 23)
    	{
    		hour = 0;
    		minute = 0;
    		second = 0;
    	}
    
    	var cHour = hour;
    	var cMinute = minute;
    	var cSecond = second;
    	var cStyleVis  = "visible";
    	// Т.к. переменные целочисленные, то в них может содержаться только по одной цифре, будет выглядеть не очень красиво (типа 1:5:3, а надо 01:05:03), проверим это.
    	// Не C++ и преобразование типов нам не нужно
    	if (second < 10) cSecond = "0" + second;
    	if (minute < 10) cMinute = "0" + minute;
    	if (hour < 10) 	 cHour 	 = "0" + hour;
    	
    	// Итоговое время
    	//time = cHour + ":" + cMinute + ":" + cSecond;
    	if(dotsShow == 1){
       		cStyleVis = "visible";
       		dotsShow  = 0;
    	}
    	else{
    		cStyleVis = "hidden";
    		dotsShow  = 1;
    	}
    	time = '<b>' + cHour + '</b> <b class="dots" style="visibility:' + cStyleVis + ';">:</b> <b>' + cMinute + '</b>';
    	//alert(time);
    	// Кроосбраузерность уже самостоятельно прописываем
    	document.getElementById('clock').innerHTML = time;
    	timeChanged = 1;
    	return true;
    }

    Борьба со временем

    dens, 16 Сентября 2011

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

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    foreach ($_POST as $k=>$v)
            if (!is_array($v))
                    $_POST[$k] = htmlspecialchars($v);
            else
                    foreach ($v as $kk=>$vv)
                            if (!is_array($vv))
                                    $_POST[$k][$kk] = htmlspecialchars($vv);
                            else
                                    foreach ($vv as $kkk=>$vvv)
                                            if (!is_array($vvv))
                                                    $_POST[$k][$kk][$kkk] = htmlspecialchars($vvv);

    atarix12, 14 Сентября 2011

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $NpjCaps = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯЇЄІ";
            $NpjSmall = "абвгдеёжзийклмнопрстуфхцчшщьъыэюяїєі";
    
            $var = str_replace( ".php", "", $var );
            $var = trim( strip_tags( $var ) );
            $var = preg_replace( "/\s+/ms", "-", $var );
            $var = strtr( $var, $NpjCaps, $NpjSmall );
            $var = strtr( $var, $NpjLettersFrom, $NpjLettersTo );
            $var = strtr( $var, $NpjBiLetters );

    Нашел в одном из "хороших" скриптов D

    SaNcHeS, 13 Сентября 2011

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