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

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

    +144

    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
    public void onMessage(final NetConnection connection, final NetMessage message) {
        final ClientConnection client = (ClientConnection) connection;
        if (message.isCommand(Protocol.CMD_LOGIN)) {
          if (this.auth(client,
              message.getParameter(Protocol.PARAM_NAME, String.class))) {
            final NetMutableMessage msgLogin = new NetMutableMessage(
                Protocol.CMD_LOGIN);
            msgLogin.addParameter(Protocol.PARAM_FROM, client.getNick());
            this.writeMessage(client, null, msgLogin);
          } else {
            this.removeConnection(client);
          }
        }
        if (message.isCommand(Protocol.CMD_LOGOUT)) {
          final NetMutableMessage msgLogout = new NetMutableMessage(
              Protocol.CMD_LOGOUT);
          msgLogout.addParameter(Protocol.PARAM_FROM, client.getNick());
          this.writeMessage(client, null, msgLogout);
          this.removeConnection(client);
        }
        if (message.isCommand(Protocol.CMD_STATUS)) {
          final NetMutableMessage msgStatus = new NetMutableMessage(
              Protocol.CMD_STATUS);
          msgStatus.addParameter(Protocol.PARAM_TYPE,
              message.getParameter(Protocol.PARAM_TYPE));
          msgStatus.addParameter(Protocol.PARAM_FROM, client.getNick());
          this.writeMessage(client, null, message);
          this.removeConnection(client);
        }
        if (message.isCommand(Protocol.CMD_USERS)) {
          final NetMutableMessage msgUsers = new NetMutableMessage(
              Protocol.CMD_USERS);
          msgUsers.addParameter("list", this.getUsers(connection));
          this.writeMessage(client, msgUsers, null);
        }
        if (message.isCommand(Protocol.CMD_SAY)) {
          final NetMutableMessage msgSay = new NetMutableMessage(Protocol.CMD_SAY);
          msgSay.addParameter(Protocol.PARAM_FROM, client.getNick());
          msgSay.addParameter(Protocol.PARAM_MESSAGE,
              message.getParameter(Protocol.PARAM_MESSAGE));
          if (null == message.getParameter(Protocol.PARAM_TO)) {
            this.writeMessage(client, msgSay, msgSay);
          } else {
            this.writeMessage(
                message.getParameter(Protocol.PARAM_TO, String.class), msgSay, null);
          }
        }
        if (message.isCommand(Protocol.CMD_MOVE)) {
          final NetMutableMessage msgMove = new NetMutableMessage(Protocol.CMD_MOVE);
          msgMove.addParameter(Protocol.PARAM_FROM, client.getNick());
          msgMove.addParameter(Protocol.PARAM_CODE,
              message.getParameter(Protocol.PARAM_CODE));
          this.writeMessage(message.getParameter(Protocol.PARAM_TO, String.class),
              msgMove, null);
        }
        if (message.isCommand(Protocol.CMD_OFFER)) {
          final NetMutableMessage msgOffer = new NetMutableMessage(
              Protocol.CMD_OFFER);
          msgOffer.addParameter(Protocol.PARAM_FROM, client.getNick());
          this.writeMessage(message.getParameter(Protocol.PARAM_TO, String.class),
              msgOffer, null);
        }
        if (message.isCommand(Protocol.CMD_ACCEPT)) {
          final NetMutableMessage msgAccept = new NetMutableMessage(
              Protocol.CMD_ACCEPT);
          msgAccept.addParameter(Protocol.PARAM_FROM, client.getNick());
          this.writeMessage(message.getParameter(Protocol.PARAM_TO, String.class),
              msgAccept, null);
        }
        if (message.isCommand(Protocol.CMD_DECLINE)) {
          final NetMutableMessage msgDecline = new NetMutableMessage(
              Protocol.CMD_DECLINE);
          msgDecline.addParameter(Protocol.PARAM_FROM, client.getNick());
          this.writeMessage(message.getParameter(Protocol.PARAM_TO, String.class),
              msgDecline, null);
        }
        if (message.isCommand(Protocol.CMD_END)) {
          final NetMutableMessage msgEnd = new NetMutableMessage(Protocol.CMD_END);
          msgEnd.addParameter("player1",
              message.getParameter(Protocol.PARAM_TO, String.class));
          msgEnd.addParameter("player2", client.getNick());
          this.writeMessage(message.getParameter(Protocol.PARAM_TO, String.class),
              null, msgEnd);
        }
      }

    нагкодил свежачок, прямиком из IDE Eclipse :)

    разрабатываю сетевую мини-игрушку с чатом. Данный метод -- из серверной части, где сервер принимает приходящие сообщения и реагирует на них.
    Обьем метода и однородность кусков намекает, что это пора рефакторить - вот думаю как.

    Lure Of Chaos, 17 Октября 2010

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

    +77

    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
    public void actionPerformed(ActionEvent e) {
                System.out.println("Przed utworzeniem resultseta");
                Statement stm=null;
                try{stm = Aplikacja.dajPolaczenieDB().createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);}
                catch (SQLException ex){System.out.println("Wystąpił błąd przy próbie utworzemia Statement: "+ex.getLocalizedMessage());}
                String z_sql = "SELECT id,imie FROM crm_sl_imion";
                ResultSet rs=null;
                try{rs = stm.executeQuery(z_sql);}
                catch(SQLException e1){System.out.println("Wystąpił błąd przy próbie utworzeniu ResultSet'a: "+e1.getLocalizedMessage());}
                try{
                    System.out.println("Rozpoczynam transakcje");
                    Aplikacja.dajPolaczenieDB().setAutoCommit(false);
                }catch(SQLException e1){
                    System.out.println("Wystąpił błąd przy probie rozpoczęcia transkacji");
                }
                String z_insert="insert into crm_sl_imion(imie) values('Zdzisek')";
                Statement stm2=null;
                try{
                   stm2 = Aplikacja.dajPolaczenieDB().createStatement();
                }catch(SQLException e1){
                   System.out.println("Wystąpił błąd przy próbie utowrzenia drugiego Stadementa: "+e1.getLocalizedMessage());
                }
                try{
                   stm2.execute(z_insert);
                }catch(SQLException e1){
                   System.out.println("Wystąpił błąd przy próbie wykonywania sql'a: "+z_insert+", błąd: "+e1.getLocalizedMessage());
                }
                try{
                    System.out.println("Odwijam transakcje");
                    Aplikacja.dajPolaczenieDB().commit();
                    Aplikacja.dajPolaczenieDB().setAutoCommit(true);
                }catch(SQLException e1){
                    System.out.println("Wystąpił błąd przy odwijaniu transakcji");
                }
                try{
                while(rs.next()){
                    System.out.println("id: "+rs.getString("id")+" imie: "+rs.getString("imie"));
                }
                }catch(SQLException e2){
                    System.out.println("Wystąpił błąd przy próbie odczytania danych: "+e2.getLocalizedMessage());
                }
                try{
                    stm.close();
                    System.out.println("Po zamknięciu Statement'a");
                }catch(SQLException e1){
                    System.out.println("Wystąpił błąd przy próbie zamknięcia Statement'a");
                }
            }

    xaoc, 16 Октября 2010

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

    +144

    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
    // Devide vector
    Tuple<Complex[], Complex[]> DevideVector(Complex[] vector){
    Complex[] firstPart = new Complex[vector.Length / 2],
    secondPart = new Complex[vector.Length / 2];
    for (int index = 0; index < firstPart.Length; index++) { firstPart[index] = vector[index]; }
    for (int index = 0, offset = firstPart.Length; index < secondPart.Length; index++) { secondPart[index] = vector[index + offset]; }
    return new Tuple<Complex[], Complex[]>(firstPart, secondPart);}
    
    // FFT
    public Complex[] Transform(Complex[] vector){
    inverse = false;
    Complex[] result = Operation(vector);
    result = InverceIndexBits(result);
    for (int index = 0; index < vector.Length; index++) { result[index] /= result.Length; }
    return result;}
    
    // IFFT
    public Complex[] InverseTransform(Complex[] vector){
    inverse = true;
    Complex[] result = Operation(vector);
    result = InverceIndexBits(result);
    return result;}
    }}

    Код из лабы моего одногруппника. Яркий пример того, как НЕ НАДО оформлять код

    KoirN, 11 Октября 2010

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

    +151

    1. 1
    2. 2
    $g_source= SF(qGet("source")); // $_GET['source'] со всякой фильтрацией
    if ($g_source=="") { $g_source=''; }

    ferry-very-good, 11 Октября 2010

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

    +165

    1. 1
    Говнокод.ру требуется ваша помощь!

    У нас небольшие проблемы с сервером, говнокод.ру может стать недоступным в любой момент. Срочно розыскиваем новый сервер. Или на время, пока не найдем достойную замену или навсегда. Возможна оплата с моей стороны. Отписывайтесь в комментарии к этому говнокоду или лично мне по следующим контактам:
    Электронная почта: [email protected]
    Jabber: страйкер@jabber.ru
    ICQ: 257073504

    striker, 21 Сентября 2010

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

    +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
    // подключение библиотек и конфига
    require_once($_SERVER["DOCUMENT_ROOT"]."/config.php");
    require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/tree.php");
    require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/func.php");
    extract($_GET);
    if (isset($d1)&&(f_del_date($d1)!="")) {
       $arr[0]=f_n_date($d1); // очистка первой переменной
       if (isset($d2)&&(f_del_date($d2)!="")) {
    	$arr[1]=f_n_date($d2); // очистка второй переменной
    	if (isset($d3)&&(f_del_date($d3)!="")) {
    	   $arr[2]=f_n_date($d3); // очистка третьей переменной
    	   if (isset($d4)&&(f_del_date($d4)!="")) {
    		$arr[3]=f_n_date($d4); // очистка четвертой переменной
    		if (isset($d5)&&(f_del_date($d5)!="")) {
    		   $arr[4]=f_n_date($d5); // очистка пятой переменной
    		   if (isset($d6)&&(f_del_date($d6)!="")) {
    			$arr[5]=f_n_date($d6); // очистка шестой переменной
    			if (isset($d7)&&(f_del_date($d7)!="")) {
    			   $arr[6]=f_n_date($d7); // очистка седьмой переменной
    			   if (isset($d8)&&(f_del_date($d8)!="")) {
    				$arr[7]=f_n_date($d8); // очистка восьмой переменной
    				if (isset($d9)&&(f_del_date($d9)!="")) {
    				   $arr[8]=f_n_date($d9); // очистка девятой переменной
    				   if (isset($d10)&&(f_del_date($d10)!="")) {
    					$arr[9]=f_n_date($d10); // очистка десятой переменной
    					if (isset($d11)&&(f_del_date($d11)!="")) {
    					   $arr[10]=f_n_date($d11); // очистка одинадцатой переменной
    
    					}
    				   }
    				}
    			   }
    			}
    		   }
    		}
    	   }
    	}
       }
    }

    Это чудесная CMS Black Crystal (Кристалл-чернуха), админка у нее такая же, как и сам код.

    nakham, 20 Сентября 2010

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

    +168

    1. 1
    if(substr($_SERVER['QUERY_STRING'],0,9)==='act=const')

    Вот так мы получаем GET данные из адресной строки

    Shevron, 19 Сентября 2010

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

    +169

    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
    if(typeid(*Line1)==typeid(TLine)) ; else
    if(typeid(*Line2)==typeid(TLine)) {cLine=Line1; Line1=Line2; Line2=cLine;} else
    if(typeid(*Line1)==typeid(TRay)) ; else
    if(typeid(*Line2)==typeid(TRay)) {cLine=Line1; Line1=Line2; Line2=cLine;} else
    if(typeid(*Line1)==typeid(TLineSegment)) ; else
    if(typeid(*Line2)==typeid(TLineSegment)) {cLine=Line1; Line1=Line2; Line2=cLine;}
    
    if(typeid(*Line1)==typeid(TLine)) {
    	if(typeid(*Line2)==typeid(TLine))  return 1; else
    	if(typeid(*Line2)==typeid(TRay)) {
    		if(
    			(( ((TRay*)Line2)->X1<=((TRay*)Line2)->X2 && ((TRay*)Line2)->X1<=Point.x )  ||
    			 ( ((TRay*)Line2)->X1>=((TRay*)Line2)->X2 && ((TRay*)Line2)->X1>=Point.x )) &&
    			(( ((TRay*)Line2)->Y1<=((TRay*)Line2)->Y2 && ((TRay*)Line2)->Y1<=Point.y )  ||
    			 ( ((TRay*)Line2)->Y1>=((TRay*)Line2)->Y2 && ((TRay*)Line2)->Y1>=Point.y ))
    		  )
    			return 1;
    		else
    			return -1;
    	} else
    	if(typeid(*Line2)==typeid(TLineSegment)) {
    		if(
    			(( ((TLineSegment*)Line2)->X1<=Point.x && Point.x<=((TLineSegment*)Line2)->X2 )||( ((TLineSegment*)Line2)->X2<=Point.x && Point.x<=((TLineSegment*)Line2)->X1 )) &&
    			(( ((TLineSegment*)Line2)->Y1<=Point.y && Point.y<=((TLineSegment*)Line2)->Y2 )||( ((TLineSegment*)Line2)->Y2<=Point.y && Point.y<=((TLineSegment*)Line2)->Y1 ))
    		  )
    			return 1;
    		  else
    			return -1;
    	}
    } else
    if(typeid(*Line1)==typeid(TRay)) {
    	if(typeid(*Line2)==typeid(TRay)) {
    		if(
    			((( ((TRay*)Line1)->X1<=((TRay*)Line1)->X2 && ((TRay*)Line1)->X1<=Point.x )  ||
    			  ( ((TRay*)Line1)->X1>=((TRay*)Line1)->X2 && ((TRay*)Line1)->X1>=Point.x )) &&
    			 (( ((TRay*)Line1)->Y1<=((TRay*)Line1)->Y2 && ((TRay*)Line1)->Y1<=Point.y )  ||
    			  ( ((TRay*)Line1)->Y1>=((TRay*)Line1)->Y2 && ((TRay*)Line1)->Y1>=Point.y )))
    			&&
    			((( ((TRay*)Line2)->X1<=((TRay*)Line2)->X2 && ((TRay*)Line2)->X1<=Point.x )  ||
    			  ( ((TRay*)Line2)->X1>=((TRay*)Line2)->X2 && ((TRay*)Line2)->X1>=Point.x )) &&
    			 (( ((TRay*)Line2)->Y1<=((TRay*)Line2)->Y2 && ((TRay*)Line2)->Y1<=Point.y )  ||
    			  ( ((TRay*)Line2)->Y1>=((TRay*)Line2)->Y2 && ((TRay*)Line2)->Y1>=Point.y )))
    		  )
    			return 1;
    		else
    			return -1;
    	} else
    	if(typeid(*Line2)==typeid(TLineSegment)) {
    		if(
    			((( ((TRay*)Line1)->X1<=((TRay*)Line1)->X2 && ((TRay*)Line1)->X1<=Point.x )  ||
    			  ( ((TRay*)Line1)->X1>=((TRay*)Line1)->X2 && ((TRay*)Line1)->X1>=Point.x )) &&
    			 (( ((TRay*)Line1)->Y1<=((TRay*)Line1)->Y2 && ((TRay*)Line1)->Y1<=Point.y )  ||
    			  ( ((TRay*)Line1)->Y1>=((TRay*)Line1)->Y2 && ((TRay*)Line1)->Y1>=Point.y )))
    			&&
    			((( ((TLineSegment*)Line2)->X1<=Point.x && Point.x<=((TLineSegment*)Line2)->X2 )||( ((TLineSegment*)Line2)->X2<=Point.x && Point.x<=((TLineSegment*)Line2)->X1 )) &&
    			((  ((TLineSegment*)Line2)->Y1<=Point.y && Point.y<=((TLineSegment*)Line2)->Y2 )||( ((TLineSegment*)Line2)->Y2<=Point.y && Point.y<=((TLineSegment*)Line2)->Y1 )))
    		  )
    			return 1;
    		else
    			return -1;
    	}
    	return 1;
    } else
    if(typeid(*Line1)==typeid(TLineSegment)) {
    	if(
    		((( ((TLineSegment*)Line1)->X1<=Point.x && Point.x<=((TLineSegment*)Line1)->X2 )||( ((TLineSegment*)Line1)->X2<=Point.x && Point.x<=((TLineSegment*)Line1)->X1 )) &&
    		((  ((TLineSegment*)Line1)->Y1<=Point.y && Point.y<=((TLineSegment*)Line1)->Y2 )||( ((TLineSegment*)Line1)->Y2<=Point.y && Point.y<=((TLineSegment*)Line1)->Y1 )))
    		&&
    		((( ((TLineSegment*)Line2)->X1<=Point.x && Point.x<=((TLineSegment*)Line2)->X2 )||( ((TLineSegment*)Line2)->X2<=Point.x && Point.x<=((TLineSegment*)Line2)->X1 )) &&
    		((  ((TLineSegment*)Line2)->Y1<=Point.y && Point.y<=((TLineSegment*)Line2)->Y2 )||( ((TLineSegment*)Line2)->Y2<=Point.y && Point.y<=((TLineSegment*)Line2)->Y1 )))
    	  )
    		return 1;
    	else
    		return -1;
    }

    Имеются классы:
    class TLine; // Линия
    class TRay: public TLine; // Луч
    class TLineSegment: public TRay; // Отрезок
    Функция записывает в Point точку пересечения прямых и возвращает 0 если прямые параллельны, -1 если пересекаются продолжения отрезков и 1 если пересекаются отрезки.
    Выше представлен кусок кода где проводится проверка, принадлежит точка пересечения отрезкам или их продолжениям.

    sanchousf, 17 Сентября 2010

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

    +160

    1. 1
    2. 2
    3. 3
    <?php
    
    if (preg_match("/\.[gjpi][ipnc][fgo]/i", $_SERVER['REQUEST_URI'])) exit;

    user654321, 08 Сентября 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Что такое скрипт Интернет магазина?
    Скрипт интернет магазина – это набор файлов, позволяющий на своем сайте
    организовать онлайн магазин.
    
    Готовый скрипт интернет магазина
    Скрипт php магазина - это готовое решение для создания интернет магазина с
    максимальной экономией времени и денег. Если Вам нужна быстрая и качественная
    разработка интернет магазина, то готовый скрипт электронного магазина именно то,
    что Вам нужно.

    Источник: http://shopcms-design.ru/
    Думаю, что это всё же говнокод. На языке "русский" =)

    hybroid, 06 Сентября 2010

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