1. PHP / Говнокод #1059

    +80.5

    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
    <?php
            else
            {
                $invalid_user_name_chars = array();
                $invalid_user_name_chars[] = '/';
                $invalid_user_name_chars[] = '\\';
                $invalid_user_name_chars[] = '?';
                $invalid_user_name_chars[] = '@';
                $invalid_user_name_chars[] = '*';
                $invalid_user_name_chars[] = '[';
                $invalid_user_name_chars[] = ']';
                $invalid_user_name_chars[] = '(';
                $invalid_user_name_chars[] = ')';
                $invalid_user_name_chars[] = '{';
                $invalid_user_name_chars[] = '}';
                $invalid_user_name_chars[] = '<';
                $invalid_user_name_chars[] = '>';
                $invalid_user_name_chars[] = '-';
                $invalid_user_name_chars[] = '+';
                $invalid_user_name_chars[] = '=';
                $invalid_user_name_chars[] = '.';
                
                for ($i = 0; $i < count($invalid_user_name_chars); $i ++)
                {
                    if (stristr($_POST['user_name'], "$invalid_user_name_chars[$i]"))
                    {
                        $err = $lang['user_name_invalid'] . ' ( <span class="signup-invalid-char">' . $invalid_user_name_chars[$i] . '</span> )';
                        break;
                    }
                }
            }

    очередной индусокод
    решается 1ой строкой регекспа, но они легких путей не ищут.

    guest, 18 Мая 2009

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

    +75.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ($i == 3) $TotalDay = 31;
    if ($i == 4) $TotalDay = 30;
    if ($i == 5) $TotalDay = 31;
    if ($i == 6) $TotalDay = 30;
    if ($i == 7) $TotalDay = 31;
    if ($i == 8) $TotalDay = 31;
    if ($i == 9) $TotalDay = 30;
    if ($i == 10) $TotalDay = 31;
    if ($i == 11) $TotalDay = 30;
    if ($i == 12) $TotalDay = 31;

    PHP-Nuke 8.0 . Классика жанра =)

    guest, 17 Мая 2009

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

    +82.4

    1. 1
    s.equals("null")

    проверка на null

    guest, 17 Мая 2009

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <div class="twothird-column-with-border float-left margin-bottom-6px dark-grey-border">
        <div class="twothird-column-body-with-border-and-padding float-left">
            .....................
        </div>
    </div>

    Говновёрстка, говноклассы :)

    guest, 17 Мая 2009

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

    +180.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (0 || 0) { 
        gotoPageOffset(0, 0); 
    } 
    
    try { 
       if (''.length > 0) {
    .....................

    Мы не ищем простых решений!

    guest, 17 Мая 2009

    Комментарии (2)
  6. Pascal / Говнокод #1053

    +136.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    hMutex := CreateMutex(0, true , 'Radionic');
      if GetLastError = ERROR_ALREADY_EXISTS then
      begin
        FullProgPath := PChar(Application.ExeName);
        WinExec(FullProgPath, SW_SHOW); // Or better use the CreateProcess function
        Application.Terminate; // or: Close;
      end;

    Пытался сделать обновления копии проги в памяти а наговнокодил кроликов в оперативке.

    guest, 16 Мая 2009

    Комментарии (0)
  7. C++ / Говнокод #1051

    −45.4

    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
    #ifdef WIN32
    
    typedef DWORD (*LPTHREAD_METHOD)(LPVOID pParam);
    
    // Структура параметров для статической функции.
    typedef struct STARTUP_PARAM
    {
       // MSVThread*        pClass;
        LPTHREAD_METHOD    pMethod;
        LPVOID            pParam;
    } *LPSTARTUP_PARAM;
      
    
        // Функция, которая создает новый поток.
        HANDLE    StartThread        (LPTHREAD_METHOD pMethod, LPVOID pParam=0, 
                                 LPDWORD pdwThreadID = NULL, 
                                 LPSECURITY_ATTRIBUTES pSecurity = NULL , 
                                 DWORD dwStackSize = 0 , 
                                 DWORD dwFlags = 0);
    
        // Статическая функция, которая запустит метод.
        static  DWORD StartFunc    (LPSTARTUP_PARAM pStartup);
    
    
    
    
    HANDLE StartThread(LPTHREAD_METHOD pMethod, LPVOID pParam, 
                                 LPDWORD pdwThreadID /* = NULL */, 
                                 LPSECURITY_ATTRIBUTES pSecurity /* = NULL */, 
                                 DWORD dwStackSize /* = 0 */, 
                                 DWORD dwFlags /* = 0 */)
    {
        // Создаем структуру и упаковываем данные для статической функции.
        LPSTARTUP_PARAM pStartup = new STARTUP_PARAM;
        pStartup->pMethod    = pMethod;
        pStartup->pParam    = pParam;
    
        // Создаем новый поток.
        return CreateThread(pSecurity, dwStackSize, (LPTHREAD_START_ROUTINE)StartFunc, pStartup, dwFlags, pdwThreadID);
    }
    
    // В новом потоке вначале вызывается функция CMyClass::StartFunc(...)
    // А она запускает наш метод.
    
    DWORD StartFunc(LPSTARTUP_PARAM pStartup)
    {
        // Распаковываем данные в новом потоке.
        // Получаем указатель на класс и на метод класса.
        LPTHREAD_METHOD pMethod = pStartup->pMethod;
        LPVOID pParam            = pStartup->pParam;
    
        // Запускаем метод класса в новом потоке.
        DWORD dwResult = (*pMethod)(pParam);
    
        // Удаляем временные данные и возвращаем код возврата из нового потока.
        delete pStartup;
        return dwResult;
    }
    
    #else
    
    #include "pthread.h"
    
    typedef DWORD (*LPTHREAD_METHOD)(LPVOID pParam);
    
    // Структура параметров для статической функции.
    typedef struct STARTUP_PARAM
    {
        LPTHREAD_METHOD    pMethod;
        LPVOID            pParam;
    } *LPSTARTUP_PARAM;
      
        // Статическая функция, которая запустит метод.
        static  DWORD StartFunc    (LPSTARTUP_PARAM pStartup);
    
        // Функция, которая создает новый поток.
    HANDLE StartThread(LPTHREAD_METHOD pMethod, LPVOID pParam=0, 
                                 LPDWORD pdwThreadID=0 /* = NULL */, 
                              //   LPSECURITY_ATTRIBUTES pSecurity /* = NULL */, 
                              //   DWORD dwStackSize /* = 0 */, 
                                 const pthread_attr_t* dwFlags=0 /* = 0 */)
    {
        // Создаем новый поток.
    	pthread_t restrict;
    	if(pthread_create(&restrict, dwFlags, (void* (*)(void*))pMethod, pParam)) return pdwThreadID;
    	return 0;
    }
    
    #endif

    Человек пишет кросплатформенный http-сервер, а заодно свой собсвенный фреймворк. Участок кода с нитями.

    guest, 16 Мая 2009

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

    +73.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    function open_connect($db,$serv,$user,$pswd)
     { $i=0;
        ini_set('max_execution_time', '100');
        while( $i<3 && !($dblinx=@mysql_connect( $serv, $user, $pswd )) ) 
    	  {
              $i++;
    		  sleep(30);
    	  }
         ini_restore('max_execution_time'); 
    }

    соединение с бд - большая проблема для php программиста заставляющая выдумывать даже такое

    guest, 16 Мая 2009

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

    +72.4

    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
    if ($tip_uslugi_id<>"5")
    {
     if ($tip_uslugi_id<>"4")
     {
      if ($tip_uslugi_id<>"3")
      {
       if ($tip_uslugi_id<>"2")
        {
          if ($tip_uslugi_id<>"1")
           {
        //все остальное
    
         $result4 = mysql_query("SELECT l_schet_usluga_comment FROM l_schet_usluga where
                    l_schet_usluga_id=$data[l_schet_usluga_id]");
                     if(!$result4)
                     {
                       echo "<p>Ошибка в запросе</p>";
                        exit();
                     }
                    while($data4 = mysql_fetch_array($result4))
                    {print "$data4[l_schet_usluga_comment]"; print "<br>";}
    
        }
       }
      }
     }
    }

    слезы на глазах...

    guest, 16 Мая 2009

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

    −210.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    sub trim_string
    {
        my($sref) = $_[0];
    
        $$sref =~ s/^\s+//g;
        $$sref =~ s/\s+$//g;
    }

    Написано владельцем одной известной говнокомпании, который утверждает, что программировать может каждый.

    guest, 15 Мая 2009

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