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

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

    +181

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /**
          * Quits the script.
          *
          * @return Page
          */
         protected function quit()
         {
              exit;
              return $this;
         }

    Bydlo, 03 Января 2011

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

    +158

    1. 1
    2. 2
    3. 3
    $where = "(`user_id` = ".$id." and `user_fr` = ".$user->Get('u_id').") or (`user_id` = ".$user->Get('u_id')." and `user_fr` = ".$id.")";
        
    $inc = array_merge($db->Select('friends', $where), $db->Select('friends_incoming', $where));

    Проверка на существования дружбы или предложений дружбы между двумя пользователями (каунтом $inc).

    Мартин, 15 Декабря 2010

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

    +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
    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
    <?php
    if ( !defined("MAGIC_WORD") ) die( "Доступ к данной странице запрещен!" );
    /**
     * ==============================
     * Page Load
     * ============================== 
     */
    $file = phpInjection(sqlInjection(@$_GET['f']));
    switch ($file)
    {
        case "news":
            $module = "news.php";
            break;
        case "lk":
            $module = "profile.php";
            break;
        case "register":
            $module = "register.php";
            break;
        case "stat":
            $module = "stat.php";
            break;
        case "forget":
            $module = "forget.php";
            break;
        case "vote":
            $module = "vote.php";
            break;
        case "webmoney":
            $module = "webmoney.php";
            break;
        default:
            $module = "main.php";
    }
    if (file_exists(ROOT_DIR . "/engine/" . $module))
    {
        include ROOT_DIR . '/engine/' . $module;
    }
    else
    {
        $tpl->result["content"] = "<div class='error'>Ошибка 404. Страница не найдена</div>";
    }
    ?>

    rat4, 17 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <map name="Map">
    	<area shape="rect" coords="0,1,25,14" href="/rada/control/uk/index">
    	<area shape="rect" coords="40,1,64,14" href="/rada/control/ru/index">
    	<area shape="rect" coords="79,1,104,14" href="/rada/control/en/index">
    </map>

    http://portal.rada.gov.ua/
    Это они так ссылки на переключение языков сделали <_<
    Просто пиздец.

    p.s. категории "html" нет, поэтому запостил в РНР.

    olegsuv, 15 Ноября 2010

    Комментарии (26)
  6. Assembler / Говнокод #4571

    +223

    1. 1
    2. 2
    3. 3
    mov ax, 4C00h
    mov dx, offset msg
    int 21h

    После этих строк пошёл спать.

    Mencey, 09 Ноября 2010

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

    +75

    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
    case 4096:
                                //chat message
                                tmp = new byte[4];
                                System.arraycopy(rp.getData(), 4, tmp, 0, 4); //nick length
                                int nickl = byteToInt(tmp);
                                System.arraycopy(rp.getData(), 8, tmp, 0, 4); //message length
                                int mlen = byteToInt(tmp);
                                tmp = new byte[nickl];
                                System.arraycopy(rp.getData(), 12, tmp, 0, nickl); //retrieving nick
                                String r2Nick = new String(byteToChar(tmp));
                                tmp = new byte[mlen];
                                System.arraycopy(rp.getData(), 12+nickl, tmp, 0, mlen); //message
                                String msg = new String(byteToChar(tmp));
                                System.out.println("<"+r2Nick+"> "+msg);
                            break;

    UDP чат без сервера (т.е. широковещательные UDP запросы).
    всё из той-же серии, что и мой прошлый пост

    danilissimus, 06 Ноября 2010

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

    +193

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /**
     * Посылает команду удалённой машине
     * перейти по указанному адресу.
     * Рекомендуется использовать вместо Header('Location: ...');
     */
    function GO( $address)
    {
         Header('Location: '.$address);
    }

    Мартин, 06 Ноября 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <div style="position:relative">
    
    Всего товаров: 1<br />
    
    На сумму: 5 750,00
    
    
    
    </div>
    
    <script>$("#korzina").load("/korzina.php",{'fsdfsad':true});</script>

    Сей кодъ подгружается аяксом из скрипта /korzina.php в div#korzina. Естественно, тут же выполняется строчка номер 6, и онъ ещё раз подгружается. И ещё раз. И ещё раз...
    Долго думал, почему так тормозит браузер и почему по vnstat'у 64 кбит/с вверх и 24 вниз при простом просмотре страницы. Думаю, админ сервера (там стоит Apache, кеке) хотел бы удавить аффтара не меньше, чем я. Сайт в продакшне с марта.

    telnet, 20 Октября 2010

    Комментарии (26)
  10. Pascal / Говнокод #4249

    +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
    type
      // смотрите, как не надо делать и почему придумали ООП
      TProc = procedure;
      TGoProc = function: boolean;
      TSizeProc = function: integer;
      TGetConfigProc = function: string;
      TApplyConfigProc = procedure(SM: PStringMap);
    
      TDeviceProc = record
        InitControls: TProc;
        MoveControls: TProc;
        Go: TGoProc;
        MaxH, MinH: TSizeProc;
        GetConfig: TGetConfigProc;
        ApplyConfig: TApplyConfigProc;
      end;
    
    const
      DeviceProcs: array [TDevice] of TDeviceProc = (
        (InitControls: ETR.InitControls; MoveControls: ETR.MoveControls; Go: ETR.Go; MaxH: ETR.MaxH; MinH: ETR.MinH; GetConfig: ETR.GetConfig; ApplyConfig: ETR.ApplyConfig),
        (InitControls: TS_NSH.InitControls; MoveControls: TS_NSH.MoveControls; Go: TS_NSH.Go; MaxH: TS_NSH.MaxH; MinH: TS_NSH.MinH; GetConfig: TS_NSH.GetConfig; ApplyConfig: TS_NSH.ApplyConfig),
        (InitControls: TS_IND.InitControls; MoveControls: TS_IND.MoveControls; Go: TS_IND.Go; MaxH: TS_IND.MaxH; MinH: TS_IND.MinH; GetConfig: TS_IND.GetConfig; ApplyConfig: TS_IND.ApplyConfig),
        (InitControls: TP_NSH.InitControls; MoveControls: TP_NSH.MoveControls; Go: TP_NSH.Go; MaxH: TP_NSH.MaxH; MinH: TP_NSH.MinH; GetConfig: TP_NSH.GetConfig; ApplyConfig: TP_NSH.ApplyConfig),
        (InitControls: TP_IND.InitControls; MoveControls: TP_IND.MoveControls; Go: TP_IND.Go; MaxH: TP_IND.MaxH; MinH: TP_IND.MinH; GetConfig: TP_IND.GetConfig; ApplyConfig: TP_IND.ApplyConfig)
      );

    Вот до чего доводит ненависть к ООП.
    ОПП - это хорошо, ООП не надо ненавидеть.

    TarasB, 14 Сентября 2010

    Комментарии (26)
  11. SQL / Говнокод #4203

    −125

    1. 1
    2. 2
    3. 3
    4. 4
    CREATE TABLE IF NOT EXISTS `ls_user_administrator` (
      `user_id` int(11) unsigned NOT NULL,
      UNIQUE KEY `user_id` (`user_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    Видимо сделать столбец 'administrator' в таблице `ls_user` и ставить в него 1 или 0 - это слишком просто.. Или тут скрыта какая-то оптимизация?
    Дамп спёрт из LiveStreet.

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

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