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

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

    +159

    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
    /*
     -----------------------------------------------------------------
     Отмечаем все темы как прочитанные
     -----------------------------------------------------------------
     */
    $req = mysql_query("SELECT `forum`.`id`
                FROM `forum` LEFT JOIN `cms_forum_rdm` ON `forum`.`id` = `cms_forum_rdm`.`topic_id` AND `cms_forum_rdm`.`user_id` = '$user_id'
                WHERE `forum`.`type`='t'
                AND `cms_forum_rdm`.`topic_id` Is Null");
    while ($res = mysql_fetch_assoc($req)) {
        mysql_query("INSERT INTO `cms_forum_rdm` SET
                        `topic_id` = '" . $res['id'] . "',
                        `user_id` = '$user_id',
                        `time` = '" . time() . "'");
    }
    $req = mysql_query("SELECT `forum`.`id` AS `id`
                FROM `forum` LEFT JOIN `cms_forum_rdm` ON `forum`.`id` = `cms_forum_rdm`.`topic_id` AND `cms_forum_rdm`.`user_id` = '$user_id'
                WHERE `forum`.`type`='t'
                AND `forum`.`time` > `cms_forum_rdm`.`time`");
    while ($res = mysql_fetch_array($req)) {
        mysql_query("UPDATE `cms_forum_rdm` SET
                        `time` = '" . time() . "'
                        WHERE `topic_id` = '" . $res['id'] . "' AND `user_id` = '$user_id'");
    }

    Один из самых популярных мобильных движков - JohnCMS.

    Скрипт отмечает темы форума как прочтенные. Частенько бывает за сотню непрочитанных тем. А я посещаю редко, так у меня вообще за тысячу переваливает иногда.

    Max_Coder, 21 Ноября 2013

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

    +158

    1. 1
    2. 2
    3. 3
    function addGetParam($key,$value){
        $_GET[$key]=$value;
    }

    В аду найдется специальное место для таких :-)

    aleksssmix, 11 Октября 2013

    Комментарии (60)
  4. Pascal / Говнокод #13769

    +139

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    type
      TCriricalThread = class (TThread)
      private
        FileS    : integer;
        Percent  : integer;
        DlSize   : integer;
        procedure SetMaxPos;
        procedure SetCurPos;
        procedure LockButton;
        procedure DislockButton;
      protected

    Ну, уж если есть критические секции, почему бы не сделать критический поток?
    TCriricalThread = class (TThread)

    Stertor, 11 Сентября 2013

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

    +88

    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
    program Project6;
    
    {$APPTYPE CONSOLE}
    
    uses SysUtils;
    
    type TIntArr = array of integer;
    
    function GetSingleArr (i: integer): TIntArr;
    begin
      SetLength(Result, 1);
      Result[0] := i;
    end;
    
    var
      W: TIntArr;
      i : integer;
    begin
      readln(i);
      if i=0 then begin
        W := GetSingleArr(5);
        WriteLn(W[0]);
      end;
      ReadLn;
    end.
    
    Delphi-7
    [Warning] Project6.dpr(25): Variable 'W' might not have been initialized

    Да какого хуя? Динмассив вообще по определению - чисто автоматический тип, как он может не инициализироваться?
    И почему для других типов такая хрень не вылазит?

    TarasB, 18 Июля 2013

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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $soobschenie = <<<ZDESDOCUMENT
    Страйкер, бл� �, поправь уже эту е� �аную кодировку и исправь х� �йню, что html-сущности превращаются в <s>элегантные шор</s> в символы. Вот здесь было написано nbsp: "&nbsp;".
    ZDESDOCUMENT;
    
    for ($i = 0; $i <= 9000; $i++)
           mail('[email protected]', 'Fucking Report', $soobschenie);

    Наболело.

    7ion, 07 Апреля 2011

    Комментарии (60)
  7. Си / Говнокод #4236

    +127

    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
    UINT32 GetHostName(char *hostName, UINT32 hostNameBufSize)
    {
            if (hostName == NULL ){
                    OSALTRACE(OSAL_ERROR, ("Error: Input parameter hostName(null)."));
                    return -1;
            }
    
            FILE *fp = NULL;
            static char buffer[512];
            char tag[64];
    
            // hope this size will be OK for one line to read from the fileOB
            char line[1000];
            char *linep=line;
    
            int buffSize = sizeof(buffer);
    
            int found = 0;
    
    
            fp = fopen("/etc/resolv.conf", "r");
    
            if ( fp == NULL)
            {
    
                    OSALTRACE(OSAL_ERROR, ("failed to open resolver config file."));
                    return -1;
            }
    
            while ( ((*linep=getc(fp)) != EOF) && !found )
            {
                    if (*linep++ == '\n')
                    {
                            *linep = '\0';
                            sscanf(line, "%s %s", tag, buffer);
                            if (tag[0] && (!strcmp(tag, "search") || !strcmp(tag, "domain") ) ) {
                                    found = 1;
                                    break;
                            }
                            linep = line;
                    }
            }
    
            fclose(fp);
    
            if ( found )
            {
                    strcpy(hostName,buffer);
                    OSALTRACE(OSAL_DEBUG, ("DHCP domain is  %s.", buffer));
            }
            else
            {
                    OSALTRACE(OSAL_ERROR, ("Could not find dhcp domain in resolv.conf."));
                    return -1;
            }
    
            return !found;
    }

    Intel WiMAX Network Service, не какая-то пионерская поделка...

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

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

    +128

    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
    include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто    измените путь  
              $result4 =    mysql_query    ("SELECT avatar FROM    users WHERE activation='0'    AND    UNIX_TIMESTAMP()    - UNIX_TIMESTAMP(date)    > 3600");//извлекаем аватарки тех пользователей, которые в    течении часа не активировали свой аккаунт. Следовательно их надо удалить из    базы, а так же и файлы их аватарок
     if    (mysql_num_rows($result4) > 0) {
                $myrow4    = mysql_fetch_array($result4);  
                do 
                {
    
                //удаляем    аватары в цикле, если они не стандартные
                if    ($myrow4['avatar'] == "avatars/net-avatara.jpg") {$a = "Ничего    не делать";}
                else    {
                         unlink ($myrow4['avatar']);//удаляем    файл
                         }
                }
    
                while($myrow4    = mysql_fetch_array($result4));
                }

    Вот как учат детей программировать там http://ruseller.com/lessons.php?rub=37&id=369

    просто умер от этого while($myrow4 = mysql_fetch_array($result4));

    Vasiliy, 10 Июля 2010

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

    +171

    1. 1
    2. 2
    3. 3
    4. 4
    // Remove empty tags (three times, just to be sure).
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;
    html = html.replace( /<([^\s>]+)(\s[^>]*)?>\s*<\/\1>/g, '' ) ;

    найдено в коде FCKEditor - редактора для веб-интерфейса

    mozg_raka, 02 Июля 2010

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

    +162

    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
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
       bool Valid = true;
       bool f1;
       bool f2;
       unsigned step = 0;
       for( bool x1=false; x1<2; x1++ )
          for( bool x2=false; x2<2; x2++ )
             for( bool x3=false; x3<2; x3++ )
                for( bool x4=false; x4<2; x4++ )
                   for( bool x5=false; x5<2; x5++ )
                      for( bool x6=false; x6<2; x6++ )
                         for( bool x7=false; x7<2; x7++ )
                            for( bool x8=false; x8<2; x8++ )
                               for( bool x9=false; x9<2; x9++ )
                                  for( bool x10=false; x10<2; x10++ )
                                     for( bool x11=false; x11<2; x11++ )
                                        for( bool x12=false; x12<2; x12++ )
                                           for( bool x13=false; x13<2; x13++ )
                                              for( bool x14=false; x14<2; x14++ )
                                                 for( bool x15=false; x15<2; x15++ )
                                                 {
       step++;                                             
       f1 = ( x1 && x2 || x3 && x4 || x5 && x6 && x7 || x8 && x9 && x10 ) && ( !x11 || x12 && x13 || x14 && x15 );
       f2 = (!(!x1 || !x2) || !(!x3 || !x4) || !(!x5 || !x6 || !x7) || !(!x8 || !x9 || !x10)) && ( !(!x14 || !x15) || !x11 || !(!x12 || !x13) );
       if ( f1 != f2 ) Valid = false; break;
                                                 }
       if( Valid ) Application->MessageBox( "Функции идентичны", "Функции идентичны", MB_OK );
       else Application->MessageBox( "NOT Valid", IntToStr(step).c_str(), MB_OK );
    
    }

    Проверка идентичности логических функций путем перебора аргументов.

    absolut, 19 Мая 2010

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

    +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
    private static bool TryDeleteFile(string path)
            {
                try
                {
                    File.Delete(path);
                    return true;
                }
                catch (IOException e)
                {
                    return false;
                }
                catch (UnauthorizedAccessException e)
                {
                    return false;
                }
                catch (ArgumentException ae)
                {
                    return false;
                }
                catch (NotSupportedException e)
                {
                    return false;
                }
            }

    Простое удаление файла. Простая проверка в MSDN показывает, что перехватываются все возможные исключения

    gopher, 14 Мая 2010

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