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

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

    +77

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public void log(String msg) {
            try {
                StringBuffer sb = new StringBuffer(), sb2 = new StringBuffer();
                sb.append(getDeviceId()).append(": ").append(msg).append('\n');
                sb2.append("^^ ").append(sb);
                System.out.println(sb2.toString()); // Вывод в консоль
                platform.logEvent(msg.getBytes()); // Вывод в лог трубы
            } catch (Exception e) {
                // Ignore
            }
        }

    Проект под BlackBerry. Каменты мои.
    Ниасилил в чем соль двух стрингбуферов О_о

    Gsom11, 09 Февраля 2011

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

    +121

    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
    switch ((sender as Button).Name)
                {
                    case "req_edit":
                        edit.source = requests;
                        break;
    
                    case "desc_edit":
                        edit.source = description;
                        break;
    
                    case "inst_edit":
                        edit.source = install;
                        break;
    
                    case "del_edit":
                        edit.source = uninstall;
                        break;
                }

    Открытие редактора по клику на кнопку возле поля ввода

    Мартин, 05 Февраля 2011

    Комментарии (17)
  4. Куча / Говнокод #5537

    +132

    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
    /*
     * лисапедный "including" в как бы шаблонах,
     * в глубокой древности, в случае отсутсвия CGI и прочих SSI...
     */
    
    <!-- Шаблон содержит... -->
    <script language="javascript" type="text/javascript" src="footer.tpl"></script>
    
    
    /* Содержание файла "footer.tpl"  */
    document.write('\
    	<p class="footer">\
    		©  Epic, Muhosransk\
    		<a href="mailto:address%40email.com" title="">address@email</a>\
    		+7 1230 45 67 89\
    	</p>\
    ');

    Поддался волне копания в старых кучах...

    istem, 05 Февраля 2011

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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!isset($caseMenu['child']))	{
    		$catsArr['list'][$caseMenu['parent']]['status'] = "active";				
    	}else{
    		$catsArr['list'][$caseMenu['parent']]['children']['list'][0]['status'] = "active";	
    	}

    помоему это охуенно

    warider, 03 Февраля 2011

    Комментарии (17)
  6. C++ / Говнокод #5488

    +172

    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
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    //уничтожение буфера
    void delbuf(void* &bf, char ntype)
    {
    	if (ntype=='C')
    	{
    		if (bf!=(char*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='B')
    	{
    		if (bf!=(BYTE*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='I')
    	{
    		if (bf!=(int*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='F')
    	{
    		if (bf!=(double*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='D')
    	{
    		if (bf!=(double*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='W')
    	{
    		if (bf!=(WORD*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='L')
    	{
    		if (bf!=(long*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='S')
    	{
    		if (bf!=(short*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	if (ntype=='R')
    	{
    		if (bf!=(DWORD*) NULL) 
    		{
    			delete[] bf;
    			bf=NULL;
    		}
    		return;
    	}
    	return;
    }

    86 строк вместо простого delete [] bf

    glprizes, 02 Февраля 2011

    Комментарии (17)
  7. Pascal / Говнокод #5483

    +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
    procedure TForm1.Timer1Timer(Sender: TObject);
    var Ras, MinRas, MinC, Comp: Integer;
    begin
    Ras:=0;
    MinC:=0;
    MinRas:=0;      // всё по нулям
     for Comp:=0 to ComponentCount-1 do // цикл по всем компонентам
      begin
       IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left>TPanel(Components[Comp]).Left) then
                     Ras:=Panel1.Left-TPanel(Components[Comp]).Left
                     else
       IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left<TPanel(Components[Comp]).Left) then
                     Ras:=TPanel(Components[Comp]).Left-Panel1.Left;
       If Ras < MinRas
        then begin
                MinRas:= Ras;  //устанавливаем переменные этой панельки за основные
                MinC:= Comp;
        end;
      end;
       if Panel1.top<(TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height) then
                    Panel1.Top:=Panel1.Top+3;    //если панель ниже то допрыгиваем
      PROBEL:=Panel1.Top=TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height
      end;

    какое-то панельное безумие

    bugmenot, 02 Февраля 2011

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

    +149

    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
    mb_internal_encoding('utf-8');
    
    // Внимание, сейчас я покажу вам фокус, который только что открыл.
    
    $request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
    $request = substr($request, strpos($request, '<span class="attention">'));
    echo mb_substr($request, 0, mb_strpos($request, '</span>')+7);
    
    // Запишем это чуть короче.
    
    $request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
    echo mb_substr(substr($request, strpos($request, '<span class="attention">')), 0, mb_strpos($request, '</span>')+7);
    
    /* Магия интерпретатора PHP!
    На абсолютно одинаковый код он нам выдает:
    
    <span class="attention">Здесь могут быть русские символы</span>
    <span class="attention">Здесь могут быть русские символы</span>blah blah blah
    */

    7ion, 02 Февраля 2011

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

    −125

    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
    //Николай
    	//проверяем артикул и если его нет, то генерируем
    	Если ПустаяСтрока(Артикул) Тогда
    		Запрос = Новый Запрос("ВЫБРАТЬ
    		                      |	МАКСИМУМ(Номенклатура.Артикул) КАК ТекАртикул
    		                      |ИЗ
    		                      |	Справочник.Номенклатура КАК Номенклатура");
    		
    		Выборка = Запрос.Выполнить().Выбрать();
    		Выборка.Следующий();
    		ТекКод = ?(Выборка.ТекАртикул = NULL, 1, Мин(ОбщегоНазначения.ПривестиСтрокуКЧислу(Выборка.ТекАртикул) + 8000, 9999999));
    		ТекАртикул = Формат(ТекКод, "ЧЦ=7; ЧВН=; ЧГ=");
    		
    		
    		//проверяем дальше
    		Выход=0;
    		Пока Выход=0 Цикл
    			Запрос = Новый Запрос("ВЫБРАТЬ
    			|	Номенклатура.Артикул КАК ТекАртикул
    			|ИЗ
    			|	Справочник.Номенклатура КАК Номенклатура
    			|ГДЕ
    			|	Номенклатура.Артикул = &Артикул");
    			Запрос.УстановитьПараметр("Артикул", ТекАртикул);
    			
    			Выборка = Запрос.Выполнить().Выбрать();
    			Нашли = Выборка.Следующий();
    			Если Нашли Тогда
    				ТекАртикул=Мин(ОбщегоНазначения.ПривестиСтрокуКЧислу(ТекАртикул) + 1, 9999999);
    				ТекАртикул = Формат(ТекАртикул, "ЧЦ=7; ЧВН=; ЧГ=");
    			Иначе
    				Выход=1;
    			КонецЕсли
    		КонецЦикла;
    		Артикул=ТекАртикул;
    		
    	КонецЕсли;
    	//Николай

    Задача: сформировать артикул (число) из 7и знаков по формуле "максимальный артикул + 1". при этом тип реквизита - строка(7). В базе встречаются значения "945784 ", "98763443".

    alex-makhnev, 15 Января 2011

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private static $from=array('Ä','ä','Æ','æ','Ǽ','ǽ','Å','å','Ǻ','ǻ','À','Á','Â','Ã','à','á','â','ã','Ā','ā','Ă','ă','Ą','ą','Ǎ','ǎ','Ạ','Ạ','ạ','Ả','ả','Ấ','ấ','Ầ','ầ','Ẩ','ẩ','Ẫ','ẫ','Ậ','ậ','Ắ','ắ','Ằ','ằ','Ẳ','ẳ','Ẵ','ẵ','Ặ','ặ',					'Ç','ç','Ć','ć','Ĉ','ĉ','Ċ','ċ','Č','č',					'Ð','ð','Ď','ď','Đ','đ',					'È','É','Ê','Ë','è','é','ê','ë','Ē','ē','Ĕ','ĕ','Ė','ė','Ę','ę','Ě','ě','Ẹ','ẹ','Ẻ','ẻ','Ẽ','Ế','ế','Ề','ề','Ể','ể','ễ','Ệ','ệ','Ə','ə',					'ſ','ſ',					'Ĝ','ĝ','Ğ','ğ','Ġ','ġ','Ģ','ģ',					'Ĥ','ĥ','Ħ','ħ',					'Ì','Í','Î','Ï','ì','í','î','ï','Ĩ','ĩ','Ī','ī','Ĭ','ĭ','Į','į','İ','ı','Ǐ','ǐ','Ỉ','ỉ','Ị','ị',					'IJ','ij',					'fi','fl',					'Ĵ','ĵ',					'Ķ','ķ','ĸ',					'Ĺ','ĺ','Ļ','ļ','Ľ','ľ','Ŀ','ŀ','Ł','ł',					'Ñ','ñ','Ń','ń','Ņ','Ň','ň','ʼn','Ŋ','ŋ',					'Ö','ö','Ø','ø','Ǿ','ǿ','Ò','Ó','Ô','Õ','ò','ó','ô','õ','Ō','ō','Ŏ','ŏ','Ő','ő','Ǒ','ǒ','Ọ','ọ','Ỏ','ỏ','Ố','ố','Ồ','ồ','Ổ','ổ','Ỗ','ỗ','Ộ','ộ','Ớ','ớ','Ờ','ờ','Ở','ở','Ỡ','ỡ','Ợ','ợ','Ơ','ơ',					'Œ','œ',					'Ŕ','ŕ','Ŗ','ŗ','Ř','ř',					'Ś','ś','Ŝ','Ş','ş','Š','š',					'Ţ','ţ','Ť','ť','Ŧ','ŧ',					'Ü','ü','Ù','Ú','Û','ù','ú','û','Ụ','ụ','Ủ','ủ','Ứ','ứ','Ừ','ừ','Ữ','ữ','Ự','ự','Ũ','ũ','Ū','ū','Ŭ','ŭ','Ů','ů','Ű','ű','Ų','ų','Ǔ','ǔ','ǖ','ǘ','Ǚ','ǚ','Ǜ','ǜ','Ư','ư',					'Ŵ','ŵ','Ẁ','ẁ','Ẃ','ẃ','Ẅ','ẅ',					'Ý','ý','ÿ','Ŷ','ŷ','Ÿ','Ỳ','ỳ','Ỵ','ỵ','Ỷ','ỷ','Ỹ','ỹ',					'Þ','þ','ß',					'Ź','ź','Ż','ż','Ž','ž','А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я');
     private static $to=array('ae','ae','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a',					'c','c','c','c','c','c','c','c','c','c',					'd','d','d','d','d','d',					'e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e','e',					'f','f',					'g','g','g','g','g','g','g','g',					'h','h','h','h',					'i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i','i',					'ij','ij',					'fi','fl',					'j','j',					'k','k','k',					'l','l','l','l','l','l','l','l','l','l',					'n','n','n','n','n','n','n','n','n','n',					'oe','oe','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o','o',					'oe','oe',					'r','r','r','r','r','r',					's','s','s','s','s','s','s',					't','t','t','t','t','t',					'ue','ue','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u','u',					'w','w','w','w','w','w','w','w',					'y','y','y','y','y','y','y','y','y','y','y','y','y','y',					'th','th','ss',					'z','z','z','z','z','z','a','b','v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','ts','ch','sh','sch','','y','','e','yu','ya','a','b','v','g','d','e','e','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','ts','ch','sh','sch','','y','','e','yu','ya');
     public static function translit($s,$tolower=false) {
      $s=str_replace(self::$from,self::$to,$s);
      if($tolower)	$s=strtolower($s);
      $s=preg_replace('/[^a-z0-9-_]+/i','-',$s);
      $s=trim($s,'-');
      return $s;
     }

    избавляемся от умляутов и проч.

    Lure Of Chaos, 05 Января 2011

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

    +151

    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
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    /*
    [... выдержки из файла functions.php ...]
    */
    function secure_input_string($string,$strip = true) {
    	/*Функция позволяет обезопасить вводимые пользователем данные путем применения ряда функций в входной строке
    	 * Входная строка должна быть текстом (string) */
    	if ((bool)$strip) {
    		//Усечение пробелов
    		$string = trim($string);
    		//Удаление PHP и HTML тегов
    		//$string = strip_tags($string);
    		//Перевод специальных символов в html эквиваленты
    		$string = htmlspecialchars($string);
    		//Отмена спец-символов обратными косыми чертами
    	}
    	//Удаление попыток вставки кода php или xml
    	$badcode = array('<?php','?>');
    	$code = array('<','>');
    	$string = str_replace($badcode,$code,$string);
    
    $str='';  
            $chars= array(  
                'a', 'b', 'c', 'd', 'e',  
                'f', 'g', 'h', 'i', 'j',  
                'k', 'l', 'm', 'n', 'o',  
                'p', 'q', 'r', 's', 't',  
                'u', 'v', 'w', 'x', 'y',  
                'z',  
                  
                'A', 'B', 'C', 'D', 'E',  
                'F', 'G', 'H', 'I', 'J',  
                'K', 'L', 'M', 'N', 'O',  
                'P', 'Q', 'R', 'S', 'T',  
                'U', 'V', 'W', 'X', 'Y',  
                'Z'  
    
    function str_size($size) {
    	//Функция для предаставления размера файла из функции filesize (возвращающуу байты) в удобочитаемый вид
    	//Приведение к строковому типу
    	$size = (string)$size;
    	if (strlen($size) == 0) {
    		//Не удалось получить размер файла
    		return false;
    	}
    	else if (strlen($size) <= 3) {
    		//Размер указан в Байтах
    		return $size.' byte';
    	}
    	else if (strlen($size) >= 4 && strlen($size) < 7) {
    		//Размер указан в Килобайтах
    		$size = (int)$size;
    		$size_k = $size/1024;
    		//Удалить двойную точность
    		$size_k = (int)$size_k;
    		return $size_k.' Kb';
    	}
    	else if (strlen($size) >= 7 && strlen($size) < 10) {
    		//Размер указан в Мегабайтах
    		$size = (int)$size;
    		$size_m = $size/1024;
    		$size_m = $size_m/1024;
    		//Оставить только один знак после точки
    		$size_m = round($size_m,1);
    		$size_m = $size_m.' Мб';
    		return $size_m;
    	}
    	else if (strlen($size) >= 10 && strlen($size) < 13) {
    		//Размер указан в Гигабайтах
    		$size = (int)$size;
    		$size_m = $size/1073741824;
    		//Оставить только один знак после точки
    		$size_m = round($size_m,1);
    		$size_m = $size_m.' Гб';
    		return $size_m;
    	}

    ======================================== ======================================== ======================================== ============
    |слияне кодов
    ======================================== ======================================== ======================================== ============

    ujkbktj, 31 Декабря 2010

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