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

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

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function isBrowserUeban()
    {
    	if (navigator.userAgent.match(/MSIE 6/i) != null) return 1;
    	else if (navigator.userAgent.match(/MSIE 7/i) != null) return 2;
    	else return 0;
    }

    кратко и по сути
    PS код писался когда ie8 не было

    saratovdae, 21 Августа 2009

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

    +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
    if(isset($_GET['o']) and $_GET['o']>0) {$id_psub = $_GET['o'];} else { exit(); }
    
    $result = mysql_query("SELECT * FROM psub WHERE id_psub='$id_psub'",$db);
    $myrow = mysql_fetch_array($result);
    $id_prepod = $myrow['id_prepod']; $type_psub = $myrow['type_psub']; $id_sub = $myrow['id_sub'];
    
    $re = mysql_query("SELECT * FROM sub JOIN set_sub ON sub.id_sub = set_sub.id_sub WHERE sub.id_sub='$id_sub'", $db);
    $m = mysql_fetch_array($re); $id_spec = $m['id_spec']; $n_cours = $m['n_cours'];
    
    $r = mysql_query("SELECT t_spec, id_fac, n_spec, id_sett FROM spec WHERE id_spec = '$id_spec'", $db);
    $yr = mysql_fetch_array($r); $t_spec = $yr['t_spec']; $id_fac = $yr['id_fac']; $n_spec = $yr['n_spec']; $id_sett = $yr['id_sett'];
    
    $l = mysql_query("SELECT t_fac FROM fac WHERE id_fac='$id_fac'", $db);
    
    if(mysql_num_rows($l) == 0) { $l = mysql_query("SELECT t_fac, id_ins FROM faci WHERE id_fac='$id_fac'", $db);
    $o = mysql_fetch_array($l); $i = $o['id_ins'];
    $rl = mysql_query("SELECT t_ins FROM ins WHERE id_ins = '$i'", $db); $ml = mysql_fetch_array($rl);
    echo "<div class='s_sfu'>".$ml['t_ins']."</div><p align='center' class='f'>Факультет:</p>";
    echo "<div class='s_sfu'>".$o['t_fac']."</div>";}

    оттуда же

    nolka4, 21 Августа 2009

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

    +158.9

    1. 1
    array('entity' => $friend, 'size' => 'tiny')

    Не говонокод, но смешно.

    Eugenep, 20 Августа 2009

    Комментарии (2)
  5. Си / Говнокод #1638

    +135.1

    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
    ...............
    if (!strcmp(tCom2ConfigWr.aucModeNo,"m1"))
                             {
                                 fprintf(cgiOut, " <option value=\"m1\" selected>comport to comport</option><option value=\"m2\">network to comport</option><option value=\"m3\">comport to group of comports</option><option value=\"m4\">network to group of comports</option><option value=\"m5\">modem mode</option><option value=\"m6\">none</option><option value=\"m7\">console</option>");
                             }
                             else if (!strcmp(tCom2ConfigWr.aucModeNo,"m2"))
                             {
                                 fprintf(cgiOut, " <option value=\"m1\" >comport to comport</option><option value=\"m2\" selected>network to comport</option><option value=\"m3\">comport to group of comports</option><option value=\"m4\">network to group of comports</option><option value=\"m5\">modem mode</option><option value=\"m6\">none</option><option value=\"m7\">console</option>");
                             }
                             else if (!strcmp(tCom2ConfigWr.aucModeNo,"m3"))
                             {
                                 fprintf(cgiOut, " <option value=\"m1\" >comport to comport</option><option value=\"m2\" >network to comport</option><option value=\"m3\" selected>comport to group of comports</option><option value=\"m4\">network to group of comports</option><option value=\"m5\">modem mode</option><option value=\"m6\">none</option><option value=\"m7\">console</option>");
                             }
    .................

    и так до m7, а также в двух копиях! Взято с сорсов вебадминки одного девайса. Досталось от индусов.

    memorizer, 19 Августа 2009

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

    +7

    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
    if(isMoving)
    {
    	std::map<int, unsigned char> dirToFrame = boost::assign::map_list_of(1, 10)(2, 5)(3, 6)(4, 7)(5, 8)(6, 9)(7, 12)(8, 11);
    	if(dir >= 1 && dir <= 10)
    		return dirToFrame[dir];
    
    	throw std::string("Something very wrong1.");
    }
    else //if(isMoving)
    {
    	std::map<int, unsigned char> dirToFrame = boost::assign::map_list_of(1, 13)(2, 0)(3, 1)(4, 2)(5, 3)(6, 4)(7, 15)(8, 14);
    	if(dir >= 1 && dir <= 10)
    		return dirToFrame[dir];
    
    	throw std::string("Something very wrong1.");
    }

    Кусок кода из open source игры. Выбирает кадр спрайта, в зависимости от направления героя. В ревизии, предшествующей этой, использовался switch.

    just_geek, 18 Августа 2009

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

    +133.8

    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
    public static XmlNode FindNodeXPath(XmlNode root, string xPath)
            {
                string[] paths = xPath.Split(new char[] { '/' });
                XmlNode node = root;
                for (int i = 0; i < paths.Length; i++)
                {
                    XmlNode childNode = null;
                    for (int j = 0; j < node.ChildNodes.Count; j++)
                    {
                        if (node.ChildNodes[j].Name == paths[i])
                        {
                            childNode = node.ChildNodes[j];
                            node = childNode;
                            break;
                        }
                    }
                    if (childNode == null)
                    {
                        return null;
                    }
                }
                return node;
            }
    
            public static XmlNode FindNodeXPath(XmlNode root, string nodeName, string xPath)
            {
                XmlNode node = FindNodeXPath(root, xPath);
                if (node != null)
                {
                    for (int i = 0; i < node.ChildNodes.Count; i++)
                    {
                        if (node.ChildNodes[i].Name == nodeName)
                        {
                            node = node.ChildNodes[i];
                        }
                    }
                }
                return node;
            }
    
            public static void UpdateBaseAddress(string url, string fileConfig)
            {
                // Create config file to create 
                XmlDocument xmlDom = new XmlDocument();
                xmlDom.Load(fileConfig);
                XmlNode root = xmlDom.DocumentElement;
                // Get XML node 
                XmlNode xmlNode = FindNodeXPath(root, "endpoint", "system.serviceModel/services/service");
                xmlNode.Attributes["address"].Value = url;
    
                xmlNode = FindNodeXPath(root, "add", "system.serviceModel/services/service/host/baseAddresses");
                xmlNode.Attributes["baseAddress"].Value = url;
    
                xmlDom.Save(fileConfig);
            }

    Виетнамский XPath эквивалент :)

    bugotrep, 15 Августа 2009

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

    +54.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    <div style="padding: 2px;"> 
        <div class="go_left">
            <font color="#777777">Account balance:</font> <span id="js_total_hours" style="margin: 0px; padding: 0px;">2</span> hours
        </div> 
        <div class="clear"></div> 
    </div>

    go_left - стиль с float: left
    clear - стиль с clear: both
    как минимум спрашивается зачем давать флоэт лефт единстенному элементу в диве.

    nonexistent, 15 Августа 2009

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

    +156

    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
    <?
    $i=$var = null;
    
    function NullPointerShare(&$vv)
    {
    
    for (;;)
    {
        $i=$vv;
    $i++;
    
    
        if ($i==20)
        {
            $i=null;
                die (NullPointerShare($i));
    
        }else if ($i<20){
    $ix=19;
     die (NullPointerShare($ix));
    	}
    }
    return $vv;
    
    }
    
    die ("--> ".NullPointerShare($var));
    ?>

    Без коментов:)

    notrade, 14 Августа 2009

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

    +3.3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    class boolshit{
    public:
    boolshit(bool shit):_shit(shit){}
    operator bool() const{return _shit;}
    private:
    bool _shit;
    };

    :)

    Ror77, 13 Августа 2009

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

    +158.2

    1. 1
    2. 2
    3. 3
    $step = ($item / 10);
    $step = explode(".",  $step); 
    $j = ($step[0] * 10 + 1);

    Округляем хуле %)

    junqed, 13 Августа 2009

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