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

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

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /**
    	* Получение длины строки для utf-8
    	*/
    	public static function strlen($str) {
        	$rus=array('й','ц','у','к','е','н','г','ш','щ','з','х','ъ','ф','ы','в','а','п','р','о','л','д','ж','э','я','ч','с','м','и','т','ь','б','ю',
                   'Й','Ц','У','К','Е','Н','Г','Ш','Щ','З','Х','Ъ','Ф','Ы','В','А','П','Р','О','Л','Д','Ж','Э','Я','Ч','С','М','И','Т','Ь','Б','Ю');
        	return strlen(str_replace($rus,'0',$str));
    	}

    зачем нам всякие (iconv|mb)_strlen ?
    хотя при отсутствии этих библиотек метод интересный

    Morgan, 13 Сентября 2010

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

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    if( !$this->dirsmodel->isExist(array('alias' => $_POST['alias']))) {
        $this->messages[] = 'Такой алиас уже существует';
        return $this->redirect("admin/dirs/#" . $cat_id);
    }

    Говнокод тонкий особый. Кто найдёт получит пиченьку

    DrFreez, 11 Сентября 2010

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

    +150

    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
    <?session_start();
    
    require_once "../Source/connect.php";
    
    require_once "../Models/Comment(class).php"?>
    
    <link rel="stylesheet" href="../Source/style.css" type="text/css" />
    
    <a href="../Forms/Register_form.php">Регистрация</a> <br/><br/>
    
    <form name="login" action="../Controller/Controller.php" method="post">
    
    <input name="login" type="text" value=""> Логин <br/>
    
    <input name="password" type="password" value=""> Пароль <br/>
    
    Введите данные:<br/><br/>
    
    <input name="do" type="submit" value="Войти">
    
    <?session_destroy();?>
    
    </form>
    
    
    
    <?
    
    $comment = new Comm();
    
    	
    
    	$comment->Menu();
    
    	$comment->Coments();
    
    ?>

    Хочется назвать сие творение: "Очень быстрая сессия".
    Это весь код главной страницы простенького сайта-блога. Автор даже не подозревает о существовании тегов <html>, <head> и <body>. Вначале можно было подумать, что он засунул их в один из подключаемых файлов, а нет. Просто не нужны они ему и все.

    SunnyMagadan, 25 Августа 2010

    Комментарии (22)
  5. Java / Говнокод #4035

    +81

    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
    public class Constants {
    
        /* ... */
    
        public static final int FOUR = 4;
        public static final int THREE = 3;
    
        public static final int INTEGER_FOUR = 4;
        public static final int INTEGER_FIVE = 5;
        public static final int INTEGER_ONE = 1;
        public static final int LENGTH_FOUR = 4;
        public static final int LENGTH_FIVE = 5;
        public static final int LENGTH_SEVEN = 7;
        public static final int LENGTH_EIGHT = 8;
        public static final int LENGTH_NINE = 9;
        public static final int LENGTH_ELEVEN = 11;
        public static final int LENGTH_TWELVE = 12;
        public static final int LENGTH_EIGHTEEN = 18;
        public static final int LENGTH_FIFTEEN = 15;
        public static final int ONE = 1;
        public static final int INTEGER_FIVE = 5;
        public static final int INTEGER_ONE = 1;
        public static final int PLUS_ONE = 1;
        public static final int INTEGER_THREE = 3;
    
        public static final Long LONG_VALUE_TEN = Long.valueOf(10);
        public static final Long LONG_VALUE_ZEARO = Long.valueOf(0);
    
        public static final BigDecimal BIGDECIMAL_ZERO = new BigDecimal(0);
        public static final BigDecimal BIGDECIMAL_ONE = new BigDecimal(1);
    
        public static final BigDecimal NEGATIVE_NUMBER_ONE = new BigDecimal(-1);
    
        public static final int COMPARE_RESULT_ZERO = 0 ;
        public static final int COMPARE_RESULT_ONE = 1 ;
        public static final int COMPARE_RESULT_NEGATIVE = -1 ;
    
        /* ... */
    
        public static final String NINE_STRING = "9";
        public static final String ONE_STRING = "9";
    
    }

    Хардкодить волшебные числа - плохой стиль. @dailywtf

    bugmenot, 20 Августа 2010

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

    +174

    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
    // get extension and name
            $ar = explode('.', $result['name']);
            if (count($ar) == 2)
            {
                $fName = $ar[0];
                $fExt  = $ar[1];
            }
            elseif (count($ar) < 2)
            {
                    $fName = $result['name'];
                    $fExt  = '';
            }
            else 
            {
                        $fName = $ar[0];
                        for ($i = 1; $i < count($ar); $i++)
                        {
                            $fName .= '.' . $ar[$i];
                        }
                        $fExt = $ar[count($ar) - 1];
            }

    Вот таким вот образом в проекте вычисляется расширение файла

    PS. Для тех кто в танке:
    method1(using internal function):
    $extension = pathinfo($filename, PATHINFO_EXTENSION);
    method2(coder know about 'explode' function)
    $ar = explode(".", $filename); $extension = count($ar)>1 ? end($ar) : "";
    method3(coder know about 'strchr', 'strrchr' and 'substr' functions)
    $extension = strrchr(".", $filename ) == FALSE ? "" : substr(strrchr(".", $filename));

    mykola, 19 Августа 2010

    Комментарии (22)
  7. JavaScript / Говнокод #3954

    +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
    45. 45
    46. 46
    function openVoteWin(wUri, wName, wWidth, wHeight, wScroll, wMenu) {
    		var scrollBars = (wScroll!=0) ? 1 : 0;
    		var menuBars = (wMenu) ? 1 : 0;
    		var positionLeft = (screen.width - wWidth)/2;
    		var positionTop = (screen.height - wHeight)/2;
    		var myW = window.open(wUri,wName,'width='+wWidth+',height='+wHeight+',top='+positionTop+',left='+positionLeft+',location=0,menubar='+menuBars+',resizable=0,scrollbars='+scrollBars+',status=0,titlebar=0,toolbar=0,directories=0,hotkeys=0')
    		myW.focus();
    	}
    	
    	function openWin(wUri, wName, wWidth, wHeight, wScroll, wMenu) {
    		var scrollBars = (wScroll!=0) ? 1 : 0;
    		var menuBars = (wMenu) ? 1 : 0;
    		var positionLeft = (screen.width - wWidth)/2;
    		var positionTop = (screen.height - wHeight)/2;
    		var myW = window.open(wUri,wName,'width='+wWidth+',height='+wHeight+',top='+positionTop+',left='+positionLeft+',location=0,menubar='+menuBars+',resizable=0,scrollbars='+scrollBars+',status=0,titlebar=0,toolbar=0,directories=0,hotkeys=0')
    		myW.focus();
    	}
    	
    	function openWinResize(wUri, wName, wWidth, wHeight, wScroll, wMenu, wResize) {
    		var scrollBars = (wScroll!=0) ? 1 : 0;
    		var menuBars = (wMenu) ? 1 : 0;
    		var reSizable = (wResize) ? 1 : 0;
    		var positionLeft = (screen.width - wWidth)/2;
    		var positionTop = (screen.height - wHeight)/2;
    		var myW = window.open(wUri,wName,'width='+wWidth+',height='+wHeight+',top='+positionTop+',left='+positionLeft+',location=0,menubar='+menuBars+',resizable='+reSizable+',scrollbars='+scrollBars+',status=0,titlebar=0,toolbar=0,directories=0,hotkeys=0')
    		myW.focus();
    	}
    	
    	
    	function openWinblur(wUri, wName, wWidth, wHeight, wScroll, wMenu) {
    		var scrollBars = (wScroll!=0) ? 1 : 0;
    		var menuBars = (wMenu) ? 1 : 0;
    		var positionLeft = (screen.width - wWidth)/2;
    		var positionTop = (screen.height - wHeight)/2;
    		var myW = window.open(wUri,wName,'width='+wWidth+',height='+wHeight+',top='+positionTop+',left='+positionLeft+',location=1,menubar='+menuBars+',resizable=1,scrollbars='+scrollBars+',status=1,titlebar=1,toolbar=1,directories=1,hotkeys=1')
    		myW.blur();
    	}
    	
    	function openWinFull(wUri, wName, wWidth, wHeight, wScroll, wMenu) {
    		var scrollBars = (wScroll!=0) ? 1 : 0;
    		var menuBars = (wMenu) ? 1 : 0;
    		var positionLeft = (screen.width - wWidth)/2;
    		var positionTop = (screen.height - wHeight)/2;
    		var myW = window.open(wUri,wName,'width='+wWidth+',height='+wHeight+',top='+positionTop+',left='+positionLeft+',location=1,menubar='+menuBars+',resizable=1,scrollbars='+scrollBars+',status=1,titlebar=1,toolbar=1,directories=1,hotkeys=1')
    		myW.focus();
    	}

    Пусть автору будет стыдно, если он зайдет на ГК

    scalar4eblo4no, 12 Августа 2010

    Комментарии (22)
  8. JavaScript / Говнокод #3791

    +167

    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
    function createIMG(src,id,width,height,border)
    {
    	var s='<IMG SRC=';
    	s+=addquo(src);
    	if(id!='')
    		s+=' ID='+id;
    	if(width&&height)
    	{
    		if(width>0)
    			s+=' WIDTH='+width;
    		if(height>0)
    			s+=' HEIGHT='+height;
    	}
    	s+=' BORDER='+border+'>';
    	return s;
    }

    Оно делает картинку

    ursus, 27 Июля 2010

    Комментарии (22)
  9. C++ / Говнокод #3762

    +148

    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
    #include <cstdio>
    #include <memory.h>
    
    #define maxn 18
    
    char c[maxn][maxn];
    int d[1 << maxn];
    
    int main()
    {
      freopen("network.in", "rt", stdin);
      freopen("network.out", "wt", stdout);
      
      int n; scanf("%d", &n);
      for (int i = 0; i < n; i++)
        scanf("%s", c[i]);
        
      memset(d, 0, sizeof(d));
      
      for (int k = 0; k < (1 << n); k++)
        for (int i = 0; i < n; i++)
          for (int j = 0; j < n; j++)
            if (c[i][j] == 'Y' && k & (1 << i) && k & (1 << j) && d[k - (1 << i) - (1 << j)] + 2 > d[k])
              d[k] = d[k - (1 << i) - (1 << j)] + 2;
              
      int max = 0;
      for (int i = 0; i < (1 << n); i++)
        if (d[i] > max)
          max = d[i];
          
      printf("%d\n", max);
      
      return 0;
    }

    ACM-задачка на динамику по подмножествам.
    Кто поймет, тому 5 ;)

    ystepanov, 22 Июля 2010

    Комментарии (22)
  10. Java / Говнокод #3754

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public class SomeClass
    {
    	@SuppressWarnings("unused")
    	private Validator validator;
    
    	... 
    }

    Эта переменная реально не используется. Удалить бы - ан нет, автор почему-то считает, что лучше пометить её как неиспользуемую, чтобы компилятор и Эклипс не ругались.
    Чем только народ думает...

    asolntsev, 21 Июля 2010

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

    +79

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    private void getCurrentBranch();
    public TDictBranch getCurrentBrach();
    public TDictBranch2 getCurrentBrach2();
    public TDictBranch2 getCurrentBrach2(Date lookupDate);
    public String getCurrentBrachId();
    public String getCurrentBrunchCode();
    public static String getCurrentBranchCharId();

    некоторые методы из класса конфигурации приложения

    borka, 20 Июля 2010

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