1. Java / Говнокод #4061

    +70

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /**
     * Окно, которое реагирует на нажатие клавиши Esc
     * определенным образом (например, окно закрывается).
     * Для этого в потомках класса необходимо реализовать метод
     * doEscapeKeyAction(), который будет вызываться при нажатии
     * клавиши ESC.
     */
    public abstract class JEscFrame extends ProfilableFrame {
    ...
    }

    borka, 22 Августа 2010

    Комментарии (3)
  2. JavaScript / Говнокод #4060

    +166

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
    <head>
      <title> Определение браузера </title>
    
    <script type='text/javascript'>
    function BrowserName()
    {
      var span = document.getElementById('browser');
      if(window.opera) { span.innerHTML = 'Opera'; }
      if(document.all) { span.innerHTML = 'IE'; }
      if(document.layers) {  span.innerHTML = 'NN4'; }
      if(window.XMLHttpRequest) { span.innerHTML = 'Mozilla (FireFox)'; }
      span.innerHTML = 'неизвестный браузер';
      return true;
    }
    </script>
    
    </head>
    
    <body onload='BrowserName()'>
    
      Ваш браузер: <span id='browser'></span>
    
    </body>
    </html>

    Блуждая в поисках откопал ещё вот такое...

    istem, 22 Августа 2010

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

    +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
    <script>T=new Array();A=new Array();C=new Array();D=new Array();D[0]='Причастие ИСПУГАННЫЙ образовано от глагола совершенного вида ИСПУГАТЬ (ЧТО СДЕЛАТЬ?), кроме этого имеет приставку ИС- , поэтому пишется с двумя буквами Н';C[0]=2;T[0]=new Array('_н','н','нн');
    D[1]='Причастие ОБРАДОВАННЫЙ образовано от глагола совершенного вида ОБРАДОВАТЬ (ЧТО СДЕЛАТЬ?), кроме этого, имеет суффикс -ОВА- , поэтому пишется с двумя буквами Н';C[1]=2;T[1]=new Array('_н','н','нн');
    D[2]='Причастие ОСНОВАННОЕ имеет зависимые слова НИ НА ЧЕМ, поэтому пишется с двумя буквами Н';C[2]=2;T[2]=new Array('_н','н','нн');
    D[3]='Причастие НЕПРИГЛАШЕННЫЙ образовано от глагола совершенного вида ПРИГЛАСТЬ (ЧТО СДЕЛАТЬ?), поэтому пишется с двумя буквами Н';C[3]=2;T[3]=new Array('_н','н','нн');
    D[4]='Слово ВЛЮБЛЕННОЙ образовано от глагола совершенного вида ВЛЮБИТЬСЯ (ЧТО СДЕЛАТЬ?), поэтому пишется с двумя буквами Н';C[4]=2;T[4]=new Array('_н','н','нн');
    D[5]='Это одно из тех слов, написание которых необходимо запомнить. В нем пишется две буквы Н. ';C[5]=2;T[5]=new Array('_н','н','нн');
    // Еще очень много букв и подобных строк, написанных, по-видимому, копипастом и единой строкой (разделил построчно я для удобства чтения)
    D[30]='Слово РАЗГНЕВАННУЮ образовано от глагола совершенного вида РАЗГНЕВАТЬ (ЧТО СДЕЛАТЬ?), кроме этого, имеет приставку РАЗ- , поэтому пишется с двумя буквами Н';C[30]=2;T[30]=new Array('_н','н','нн');
    D[31]='Слово НЕУГНЕТЕННЫЙ имеет приставку У- , поэтому пишется с двумя буквами Н.';C[31]=2;T[31]=new Array('_н','н','нн');</script>
    
    					<div id="notearea"><p align="justify">Выберите правильные варианты ответов. Для проверки выполненного задания нажмите кнопку «Проверить».</p></div><br>
    					<script>if (window.opera) {var d=document.createElement('div');d.innerHTML='<p class="error">К сожалению, Ваш браузер не поддерживается. Программа работает в браузерах Internet Explorer и Mozilla Firefox.</p>';document.getElementById("notearea").appendChild(d);}</script>

    Государственный портал о русском языке Грамота.ру.
    Интерактивный диктант.

    7ion, 22 Августа 2010

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

    +176

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $submit=($a!=0)?true:false;
    if($submit==true)
    {
        redirect("index.php");
    }
    else
    {
        if($submit==false)
        {
    	  include_once("module.php");
        }
    }

    железная индусская логика

    zloiia, 22 Августа 2010

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

    +165

    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
    $adm="
    
               	   <img src='img/up.gif' onclick='priorThread($child[id],$level, 1);' style='cursor:pointer;' title='переместить вверх'>
    
               	   <img src='img/down.gif' onclick='priorThread($child[id],$level, -1);' style='cursor:pointer;' title='переместить вниз'>
    
               	   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    
               	   <img src='img/add.gif' title='Добавить подрубрику' style='cursor:pointer;' onclick='addThread($child[id],$level);'>
    
    	   		   <img src='img/edit.gif'title='Редактировать'  style='cursor:pointer;' onclick='editThread($child[id],\"$child[name]\",$level);'>
    
               	   <img src='img/del.gif' title='Удалить' style='cursor:pointer;' onclick='delThread($child[parent_id],$child[id],$level);'>"; 
    
               $adm="";

    Гениально:)

    moonie, 21 Августа 2010

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

    +101

    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
    87. 87
    88. 88
    89. 89
    90. 90
    private void SetValue(UserStructure item, int id, int tabKey, int elementKey, string newValue)
            {
                if (!item.Chats.ContainsKey(id))
                    throw new KeyNotFoundException(String.Format(
                        "Чат с id = '{0}' недоступен с этой учётной записи", id));
    
                if (item.UserName != item.Chats[id].Own)
                {
                    switch (item.Chats[id].UserPremission)
                    {
                        case UserPremission.AccountLocked:
                            throw new AccessViolationException(String.Format(
                                "Чат с id = '{0}' заблокирован", id));
                    }
                }
    
                int assemblyNumber = item.Chats[id].AssemplyNumber;
    
                if (!_contentManager.AssembplyContent.ContainsKey(assemblyNumber))
                    throw new NotImplementedException(String.Format(
                        "Для сборки = '{0}' контент не реализован", assemblyNumber));
    
                Dictionary<int, TabItem> tabs = _contentManager.AssembplyContent[assemblyNumber];
    
                if (!tabs.ContainsKey(tabKey))
                    throw new NotImplementedException(String.Format(
                        "Вкладка с ключём = '{0}' в сборке = '{1}' не существует", tabKey, assemblyNumber));
    
                if (!tabs[tabKey].Elements.ContainsKey(elementKey))
                    throw new NotImplementedException(String.Format(
                        "Элемент с ключём = '{0}' во вкладке = '{1}' и сборке = '{2}' не существует", 
                        elementKey, tabKey, assemblyNumber));
    
                ElementItem element = tabs[tabKey].Elements[elementKey];
    
                GetSetParametrs getSetParametrs = new GetSetParametrs(item.Chats[id]);
    
                switch (element.ContentType)
                { 
                    case ContentType.text_box:
                        switch (element.Resource)
                        { 
                            case ResourceType.file:
                                getSetParametrs.SetValueToFile(element.Value, newValue);
                                break;
    
    			...............................................
    
                            case ResourceType.change_login:
                                getSetParametrs.SetValueToChangeLogin(item.UserName, newValue);
                                break;
    
                            case ResourceType.change_password:
                                getSetParametrs.SetValueToChangePassword(newValue);
                                break;
                        }
                        break;
    
                    case ContentType.payment_button:
                        switch (element.Resource)
                        {
                            case ResourceType.extend_chat:
                                getSetParametrs.PayForChat();
                                break;
    
                            case ResourceType.clear_credentials:
                                getSetParametrs.SetValueToClearCredentials(element.Price);
                                break;
    
                            case ResourceType.clear_users:
                                getSetParametrs.SetValueToClearUsers(element.Price);
                                break;
                        }
                        break;
    
                    case ContentType.money_transfer:
                        switch (element.Resource)
                        {
                            case ResourceType.money_to_chat:
                                getSetParametrs.SetValueToMoneyTransfer(item.MainChat, newValue);
                                break;
                        }
                        break;
    
                    default:
                        throw new FieldAccessException(String.Format(
                            "Ресурс '{0}' с ключём = '{1}' во вкладке = '{2}' и сборке = '{3}' недоступен для редакирования",
                            element.Resource, elementKey, tabKey, assemblyNumber));
                }
            }

    Люди, не гавнокод ли?
    Напрягает объёмность метода.
    А сколько по вашему максимальное кол-во строк в методе?
    Кодинг мой, приму любую критику. По поводу использования встроенных исключений попрошу промолчать

    Nigma143, 21 Августа 2010

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

    +165

    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
    function writelogin()
    
      {
    
      echo "<table border=0 width=100% cellspacing=0 cellpadding=0 background=design/images/layout_02.jpg height=81><tr><td>";
    
       echo "<form height=10 name=log method=post action=login.php?action=login&referrer=\>";
    
       echo " <table border=0 cellspacing=-1 cellpadding=0><tr><td> ";
    
       echo " &nbsp;&nbsp;<font size=-2>Логин:<br>";
    
       echo "&nbsp;&nbsp;<input type=textfield name=login class=textfield ><br>";
    
       echo " &nbsp;&nbsp;Пароль<br>";
    
       echo " &nbsp;&nbsp;<input type=password name=password class=textfield>";
    
       echo " <td><br><input onclick='javascript:log.submit()' type=image alt='Авторизоваться' name=go src=design/images/button.jpg></table>";
    
       echo "</form>";
    
       echo "</table>";
    
      }

    А сколько здесь надо пальцев отрубать???:)

    moonie, 21 Августа 2010

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

    +119

    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
    /**
         * Parses inlined match flags and set them appropriately.
         */
        private void addFlag() {
            int ch = peek();
            for (;;) {
                switch (ch) {
                case 'i':
                    flags |= CASE_INSENSITIVE;
                    break;
                case 'm':
                    flags |= MULTILINE;
                    break;
                case 's':
                    flags |= DOTALL;
                    break;
                case 'd':
                    flags |= UNIX_LINES;
                    break;
                case 'u':
                    flags |= UNICODE_CASE;
                    break;
                case 'c':
                    flags |= CANON_EQ;
                    break;
                case 'x':
                    flags |= COMMENTS;
                    break;
                case '-': // subFlag then fall through
                    ch = next();
                    subFlag();
                default:
                    return;
                }
                ch = next();
            }
        }
    
        /**
         * Parses the second part of inlined match flags and turns off
         * flags appropriately.
         */
        private void subFlag() {
            int ch = peek();
            for (;;) {
                switch (ch) {
                case 'i':
                    flags &= ~CASE_INSENSITIVE;
                    break;
                case 'm':
                    flags &= ~MULTILINE;
                    break;
                case 's':
                    flags &= ~DOTALL;
                    break;
                case 'd':
                    flags &= ~UNIX_LINES;
                    break;
                case 'u':
                    flags &= ~UNICODE_CASE;
                    break;
                case 'c':
                    flags &= ~CANON_EQ;
                    break;
                case 'x':
                    flags &= ~COMMENTS;
                    break;
                default:
                    return;
                }
                ch = next();
            }
        }

    очередной кусок творчества Chen-Lieh Huang, Alan Liu
    /* @(#)Pattern.java 1.113 07/05/07
    * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
    * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
    */

    продолжение #3976 #3975 #3940 #3998 #3999 #4007

    3.14159265, 21 Августа 2010

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

    +155

    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
    int ValidMail(std::string Email)
    {
        sockaddr_in socketaddr;
        socketaddr.sin_family = AF_INET;
        socketaddr.sin_port = htons(80);
        socketaddr.sin_addr.s_addr = inet_addr("217.69.130.42");
        int sock = socket(AF_INET, SOCK_STREAM, 0);
        std::string set = "GET http://my.mail.ru/mail/"+ Email +" HTTP/1.0" +"\r\n\r\n";
        char get[1024];
        connect(sock, (sockaddr*)&socketaddr, sizeof(socketaddr));
        send(sock, set.c_str(), set.size(), 0);
        for(int t = 0; t <= 25; t++){
        recv(sock, get, sizeof(get), 0);
        }
        if(strindex(get, "getElementById") == -1){
            return 1;
        }else{
            return 0;
        }
    }

    Вот что недавно наговнокодил. Получаем страницу юзера на майл мире и проверяем, есть ли такой ваще xD

    hromjo, 21 Августа 2010

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

    +163

    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
    class A
    {
    public:
    	~A();
    };
    
    void A::!A()
    {
    	//destructor
    }
    
    int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR commandLine, int)
    {
    	A* a = new A();
    	delete a;
    
    	return 0;
    }

    Компилируется и РАБОТАЕТ (заходит в этот "деструктор" при удалении объекта) под Visual C++ 2008.
    Перестаёт компилироваться после любого малейшего изменения (например, если убрать void перед реализацией "деструктора").
    КАК?!

    Kirinyale, 21 Августа 2010

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