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

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

    +164

    1. 1
    2. 2
    3. 3
    if( empty( $page ) || empty( $_REQUEST['page'])) {
    	if( !empty($_REQUEST['amp;page'])) {
    		$page = $_REQUEST['amp;page'];

    из VirtueMart - компонента для Джумлы.
    интересно, почему нету проверок на $_REQUEST['amp;amp;page']; и $_REQUEST['amp;amp;amp;page']; ?

    Shock, 17 Октября 2010

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

    +164

    1. 1
    2. 2
    3. 3
    if(count($db->AffectedRows()) > 0) {
    // *** Инсертим данные в таблицу***
    }

    Мартин, 13 Октября 2010

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

    +164

    1. 1
    2. 2
    #define MERGE(X,Y) X##Y
    typedef unsigned MERGE(ch,ar)	byte;

    sermp, 11 Октября 2010

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    if(!get_magic_quotes_gpc()) {
    	$_GET = addslashes($_GET);
    	$_POST = addslashes($_POST);
    }

    Шедевры отечественного экранирования. Из недр движка http://linuxnow.ru

    telnet, 18 Сентября 2010

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

    +164

    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
    if($result){
    				list($Title_block, $Sections, $Description,$Moderators) = mysql_fetch_row($result)
    				//$row = mysql_fetch_assoc($result)
    				echo "<form>\n";
    					echo "\t<table border='4' cellspacing='1' cellpadding='1' width='1000' height='60'>\n";
    						echo "\t\t<tr>\n";
    							echo "\t\t\t<td colspan='5' bgcolor='gray' align='leftmargin'>$Title_block</td>\n";
    						echo "\t\t</tr>\n";
    				do{
    					echo "\t\t<tr>\n";
    						echo "\t\t\t<td bgcolor='#A0A0A0'></td>\n";
    						echo "\t\t\t<td bgcolor='#A0A0A0' width='500'>Форум</td>\n";
    						echo "\t\t\t<td bgcolor='#A0A0A0'>Тем</td>\n";
    						echo "\t\t\t<td bgcolor='#A0A0A0'>Сообщений</td>\n";
    						echo "\t\t\t<td bgcolor='#A0A0A0'>Последних сообщений</td>\n";
    					echo "\t\t</tr>\n";
    					echo "\t\t<tr>\n";
    						echo "\t\t\t<td bgcolor='##D0D0D0'><img src='mus.png'></td>\n";
    						echo "\t\t\t<td bgcolor='#D0D0D0' width='500' class='row4'>\n";
    							echo "\t\t\t\t<b><a href='Click' style='color:black;'>$Sections</a></b>\n";
    							echo "\t\t\t\t<br />$Description<br />Модераторы: $Moderators</td>\n";
    						echo "\t\t\t<td bgcolor='#D0D0D0'></td>\n";
    						echo "\t\t\t<td bgcolor='#D0D0D0'></td>\n";
    						echo "\t\t\t<td bgcolor='#D0D0D0'></td>\n";
    					echo "\t\t</tr>\n";
    				}while(list($Title_block, $Sections, $Description,$Moderators) = mysql_fetch_row($result));
    					echo "\t</table>\n";
    				echo "</form>\n";

    Часть одного самописного форума

    uadeveloper, 06 Сентября 2010

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
    $Data = array(images => ImgPathHttp);
    if ($level[$cn][good][$cg][news] || true) {
    	$Data[link_img] = "<a class=\"Size11item\" href=\"" . $App->GetURLWww(array(c => $level[$cn][id_cat], pid => $level[$cn][good][$cg][id_good], show_product => $show_product)) . "\" title=\"" . $level[$cn][good][$cg][model] . "\">";
    	$Data[link_img_end] = "</a>";
    } else {
    	$Data[link_img] = "<font class=red>";
    	$Data[link_img_end] = "</font>";
    }

    Требуется заменить шаблон на сайте.
    Переплёты PHP, HTML, SMARTY.
    Фаил "/includes/inc/item.inc.php".
    КАЗНИТЬ НЕЛЬЗЯ ПОМИЛОВАТЬ.

    doremidon, 31 Августа 2010

    Комментарии (15)
  8. C++ / Говнокод #4130

    +164

    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
    class Cmd
    {
    private:  /* ... */
    protected: /* ... */
    public:
    	virtual void Assign(Cmd *Source) {}
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class UARTCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	TypeCommand TypeCmd;
    public:
    	virtual void Assign(Cmd *Source) { /* .1. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class TRANSITCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	unsigned short FNumb;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .3. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class ASKCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	byte FidFrom;
    	byte FTimeR;
    	unsigned short FSID;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .4. */ }
    	/* ... */
    };
    //---------------------------------------------------------------------------
    class RESPCmd: public Cmd
    {
    private: /* ... */
    protected:
    	byte FCode;
    	unsigned short FCRCbytes;
    	int FLenData;
    	byte FData[256];
    	unsigned short FInit_CRC;
    	unsigned short FPoly_CRC;
    
    	byte FID;
    
    	byte FidFrom;
    	byte FTimeR;
    	unsigned short FSID;
    
    	byte FidResp;
    	unsigned short FCRCResp;
    public:
    	virtual void Assign(Cmd *Source) { /* .2. */ /* .4. */ /* .5. */ }
    	/* ... */
    };

    Сие чудо я должен реализовывать! Так сказать, привести в порядок код.

    P.S. Первоначальный вариант выглядит в разы лучше.
    P.P.S. /* .1. */ - обозначает часть кода

    sanchousf, 30 Августа 2010

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

    +164

    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 load(char *file)
    	{
    		reader = fopen((const char*)file, "r+b");
    		if(reader)
    		{
    			byte *b = (byte*)malloc(sizeof(byte));
    			fread(b, sizeof(byte), 1, reader);
    			if(b == 0x0)
    			{
    				int *wh_val = (int*)malloc(sizeof(int) * 2);
    				fread(wh_val, sizeof(int), 2, reader);
    				width = *wh_val;
    				height = *(wh_val + 1);
    				pixels = (Color**)malloc(sizeof(Color*) * width);
    				for (int i = 0; i < width; ++i)
    				{
    					*(pixels + i) = (Color*)malloc(sizeof(Color) * height);
    					for (int j = 0; j < height; ++j)
    					{
    						byte *rgb = (byte*)malloc(sizeof(byte) * 3);
    						fread(rgb, sizeof(byte), 3, reader);
    						Color c = Color(0);
    						c.red = *(rgb) / 255.0;
    						c.green = *(rgb + 1) / 255.0;
    						c.blue = *(rgb + 2) / 255.0;
    						*(*(pixels + i) + j) = c;
    					}
    				}
    			}
    		}
    	}

    Пишу я код ни о чем не задумываясь, а когда задумался, уже было это.
    ЗЫ. эта ф-ция читает картинку из спец. файла.

    psina-from-ua, 28 Августа 2010

    Комментарии (46)
  10. JavaScript / Говнокод #4092

    +164

    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
    var modo_sac = 0;
    function buscar_sacapuntas(modo){
    	try {
    		if(modo!=null || modo!='undefined')
    			modo_sac = modo;
    		cn_sac = crearXMLHttpRequest();
    		var cad_x = encodeURIComponent(null)
    		cn_sac.onreadystatechange = procesar_sacapuntas;
    		cn_sac.open("POST","extranet/portal/xml/xml_publicos/xml_sacapunta.xml",true);
    		cn_sac.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    		cn_sac.send(cad_x);
    	}catch(exception) {
    		if(exception.description == null){
    			alert("ExcepciУГn a: " + exception.message);  
    		}else{
    			alert("ExcepciУГn a: " + exception.description);
    		}//end if
    	}//end try
    }//end function

    немного о том, как говнокодит Уго Чавэс в Венесуэле:)
    http://www.opsu.gob.ve/js/js_index.js
    см. строку 4 (венесуэльное условие) и 7 (венесуэльный encodeURIComponent)

    Alfred, 24 Августа 2010

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

    +164

    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
    <?php
     // Получение страницы напрямую или через проксю
    function getfile($GrabURL)
    {
     global $proxy_name,$proxy_port;
    
     if($proxy_name!="")
     {
      $f = urldecode($GrabURL);
      $proxy_fp = fsockopen($proxy_name, $proxy_port,$errno,$errstr);
      if (!$proxy_fp)
       return false;
      $out = "GET ".$f." HTTP/1.0\r\n\r\n";
      fwrite($proxy_fp, $out);
      $x = "";
      stream_set_timeout($OpenFile, 10);
      stream_set_blocking($OpenFile, 0);
      while (!feof($proxy_fp))
      {
       $RetrieveFile = fread($proxy_fp,8192) or last;
       $x = $x.$RetrieveFile;
      }
      fclose($proxy_fp);
     }
     else
     {
    
     $OpenFile = fopen($GrabURL, "rb");
    
     if(!$OpenFile) return "";
    
       $i = 0;
       $x = "";
       stream_set_timeout($OpenFile, 10);
       stream_set_blocking($OpenFile, 0);
       while (!feof($OpenFile))
        {
         $RetrieveFile = fread($OpenFile, 8192);
         $x=$x.$RetrieveFile;
        }
       fclose($OpenFile);
      }
     return $x;
    }
    ?>

    Аналог file_get_contents. По просьбам из #4065

    mr.The, 23 Августа 2010

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