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

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $userList = "";
    foreach ($this->currentUsers as $k => $v)
    { 
        $userList .= ($v->first_name . (empty($v->middle_name) ? "" : " " . $v->middle_name)  . " " . $v->last_name . ", ");
    }
    $userList = substr($userList, 0, -2);
    ?>
    <?= $userList ?>

    Индусы отдыхают.

    anycolor, 28 Января 2011

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

    +120

    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
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    static void processCmd(string command) {
    	string[] c_args = command.Split(" ".ToCharArray());
    	switch (c_args[0]) {
    		case "beep":
    			nbr.PlayTone(4096, 500);
    			break;
    		case "exit":
    			exit_op();
    			break;
    		case "info":
    			log_ca("Info:");
    			log_ca(Application.ProductName + " " + Application.ProductVersion);
    			log_ca("listener is " + ((services_running[0]) ? "running" : "down"));
    			log_ca("updater is " + ((services_running[1]) ? "running" : "down"));
    			break;
    		case "start":
    			try {
    				switch (c_args[1]) {
    					case "updater":
    						break;
    					case "listener":
    						if (services_running[0])
    							log_ca("listener is already running");
    						else
    							start_listener();
    						break;
    					default:
    						throw new ArgumentException();
    						break;
    				}
    			}
    			catch {
    				log_ca("Usage: start <service>. Available services: listener, updater.");
    			}
    			break;
    		case "help":
    			foreach (string hs in System.IO.File.ReadAllLines("help.txt")) {
    				log_ca(hs);
    			}
    			break;
    		default:
    			log_ca("\"help\" will display all available commands");
    			break;
    		case "stop":
    			try {
    				nbr.MotorA.Brake();
    				nbr.MotorB.Brake();
    				nbr.MotorC.Brake();
    			}
    			catch { }
    			break;
    		case "run":
    			try {
    				switch(c_args[1]) {
    					case "a":
    						if(arr_motor[0]=="none")
    							log_e("Motor not found or config error");
    						else {
    							if (c_args[4] == "false")
    								nbr.MotorA = new NxtMotor(false);
    							else
    								nbr.MotorA = new NxtMotor(true);
    							nbr.MotorA.Run(Convert.ToSByte(c_args[2]), Convert.ToUInt32(c_args[3]));
    						}
    						break;
    					case "b":
    						if(arr_motor[1]=="none")
    							log_e("Motor not found or config error");
    						else {
    							if (c_args[4] == "false")
    								nbr.MotorB = new NxtMotor(false);
    							else
    								nbr.MotorB = new NxtMotor(true);
    							nbr.MotorB.Run(Convert.ToSByte(c_args[2]), Convert.ToUInt32(c_args[3]));
    						}
    						break;
    					case "c":
    						if(arr_motor[2]=="none")
    							log_e("Motor not found or config error");
    						else {
    							if (c_args[4] == "false")
    								nbr.MotorC = new NxtMotor(false);
    							else
    								nbr.MotorC = new NxtMotor(true);
    							nbr.MotorC.Run(Convert.ToSByte(c_args[2]), Convert.ToUInt32(c_args[3]));
    						}
    						break;
    					default:
    						throw new Exception();
    						break;
    				}
    			}
    			catch (Exception ex) {
    				log_ca("Usage: run <motor> <speed> <tacho> <reverse>. Example: run a 100 0 false.");
    			}
    		break;
    	}
    }

    Мой код, написано 3 года назад.

    A1mighty, 27 Января 2011

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

    +157

    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
    function convert($str,$ky=''){
      if($ky=='')return $str;
      $ky=str_replace(chr(32),'',$ky);
      if(strlen($ky)<8)exit('key error');
      $kl=strlen($ky)<32?strlen($ky):32;
      $k=array();
      for($i=0;$i<$kl;$i++){
        $k[$i]=ord($ky{$i})&0x1F;
      }
      $j=0;
      for($i=0;$i<strlen($str);$i++){
        $e=ord($str{$i});
        $str{$i}=$e&0xE0?chr($e^$k[$j]):chr($e);
        $j++;
        $j=$j==$kl?0:$j;
      }
      return $str;
    }

    PHPASTA

    bugmenot, 27 Января 2011

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

    +166

    1. 1
    echo 'Состояние ебических кавычек: '.(get_magic_quotes_gpc() ? '<span class="red">Да как же их вырубить!!?</span>' : '<span class="green">Вырублены!</span>');

    Uchkuma, 25 Января 2011

    Комментарии (12)
  6. Java / Говнокод #5377

    +78

    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
    public void setDomainSearchFilter(String domainSearchFilter) {
    	if (this.domainSearchFilter == null)
    	{
    		if (domainSearchFilter != null)
    		{
    			this.domainSearchFilter = domainSearchFilter;
    		}
    
    		return;
    	}
    
    	if (domainSearchFilter == null)
    	{
    		this.domainSearchFilter = null;
    		return;
    	}
    
    	if (!this.domainSearchFilter.equals(domainSearchFilter))
    	{
    		this.domainSearchFilter = domainSearchFilter;
    	}
    }

    voice, 24 Января 2011

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

    +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
    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
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    <?php
    $month_cols = array("january" => 31,
    	            "february" => 28,
                        "march" => 31,
                        "april" => 30,
                        "may" => 31,
                        "june" => 30,
                        "july" => 31,
                        "august" => 31,
                        "september" => 30,
                        "october" => 31,
                        "november" => 30,
                        "december" => 31);
    
    if($_POST["month_to_change"])
    {
    $month_to = $_POST["month_to_change"];
     for($i = 1; $i <= $month_cols[$_POST["month_to_change"]]; $i++)
     {
      $description = mysql_real_escape_string($_POST["textar_".$i]);
      mysql_query("UPDATE `calender` SET `description` = '$description' WHERE `day` = '$i' AND `month` = '$month_to' LIMIT 1");
     }
    }
    
      echo "<h3>Лунный календарь</h3>";
    
      if($_POST["month_change"])
      {
       if($_POST["month"] == "january") $jan_sel = "selected";
       if($_POST["month"] == "february") $feb_sel = "selected";
       if($_POST["month"] == "march") $mar_sel = "selected";
       if($_POST["month"] == "april") $apr_sel = "selected";
       if($_POST["month"] == "may") $may_sel = "selected";
       if($_POST["month"] == "june") $jun_sel = "selected";
       if($_POST["month"] == "july") $jul_sel = "selected";
       if($_POST["month"] == "august") $aug_sel = "selected";
       if($_POST["month"] == "september") $sep_sel = "selected";
       if($_POST["month"] == "october") $oct_sel = "selected";
       if($_POST["month"] == "november") $nov_sel = "selected";
       if($_POST["month"] == "december") $dec_sel = "selected";
      }
      else
      {
       $jan_sel = "selected";
      }
    
      $changing_month = $_POST["month"];
      if($changing_month == "") $changing_month = "january";
    
      echo "<table>\n";
      echo "<tr><td>\n";
      echo "<form name=\"form_name\" id=\"form_id\" action=\"\" method=\"post\">\n";
      echo "<select name=\"month\" onChange=\"this.form.submit()\">\n
      	<option value=\"january\" $jan_sel>Январь</option>\n
    	<option value=\"february\" $feb_sel>Февраль</option>\n
            <option value=\"march\" $mar_sel>Март</option>\n
            <option value=\"april\" $apr_sel>Апрель</option>\n
            <option value=\"may\" $may_sel>Май</option>\n
            <option value=\"june\" $jun_sel>Июнь</option>\n
            <option value=\"july\" $jul_sel>Июль</option>\n
            <option value=\"august\" $aug_sel>Август</option>\n
            <option value=\"september\" $sep_sel>Сентябрь</option>\n
            <option value=\"october\" $oct_sel>Октябрь</option>\n
            <option value=\"november\" $nov_sel>Ноябрь</option>\n
            <option value=\"december\" $dec_sel>Декабрь</option>\n
            </select>\n";
      echo "<input type=\"hidden\" name=\"month_change\" value=\"change\">\n";
      echo "</td></tr>\n";
    
      for($i = 1; $i <= $month_cols[$changing_month]; $i++)
      {
    
      $q_q2 = mysql_query("SELECT `description` FROM `calender` WHERE `day` = '$i' AND `month` = '$changing_month' LIMIT 1");
    
      $descr = mysql_fetch_row($q_q2);
    
       echo "<tr valign=\"top\" cols=\"5\">
              <td><b>$i</b></td>
              <td>
              <textarea name=\"textar_$i\">".$descr[0]."</textarea>
              </td>
    </tr>\n";
      }
    
      echo "<tr>
             <td colspan=\"2\" align=\"right\">
             <input type=\"submit\" value=\"Сохранить\">
             </td>
    </tr>\n";
    
      echo "<input type=\"hidden\" name=\"month_to_change\" value=\"$changing_month\">\n";
    
      echo "</form>";
      echo "</table>";
    ?>

    А это уже часть, которая апдейтит базу :-)

    varg242, 22 Января 2011

    Комментарии (12)
  8. ActionScript / Говнокод #5307

    −129

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (!(!roundActive && isRandom)) //random round ended - don't update view elements
    {
    	Logger.getInstance().debug("VideoRoundView.roundStarted: changing view");
    	exitBtn.setRandomMode(roundActive && isRandom);
    	viewMode.connectionUpdated(roundActive);
    }

    Сначала мозговыносящая конструкция с отрицанием отрицания, а потом сам автор сдался... :)

    wvxvw, 17 Января 2011

    Комментарии (12)
  9. Java / Говнокод #5297

    +76

    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
    public void Mina(int x, int y){
            Dimension d = this.getSize();
    	int dx = d.width/(MC+2);
    	int dy = d.height/(MR+2);
    	Graphics g = getGraphics();
            Graphics2D gr = (Graphics2D)g;
            GradientPaint gp = new GradientPaint(x, y, Color.white, x+dx, y+dy, Color.black, true);
            gr.setPaint(gp);
            gr.fill(new Ellipse2D.Double(x,y,dx,dy));
    	g.setColor(Color.black);
    	g.drawLine(x-1,y-1,x-1,y+dy);
    	g.drawLine(x-1,y-1,x+dx,y-1);
    	g.drawLine(x-1+dx,y-1,x-1+dx,y+dy);
    	g.drawLine(x-1,y-1+dy,x-1+dx,y-1+dy);
    	g.setColor(Miner.currColor);
    }

    Создаем рисунок программно! Градиентный шарик для Java - быстро ли?!

    dwinner, 16 Января 2011

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

    +35

    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
    <?php
    include_once './includes/bootstrap.inc';
    drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
    module_load_include('inc', 'node', 'node.pages'); 
    
    $queryPopQueue = "select * from custom_contact_insert where drupal_node_id is null limit 50";
    $queryResult =  db_query($queryPopQueue);
    while ($data = db_fetch_object($queryResult)){
        $node->type = 'contact';
        node_object_prepare($node);
        $node->uid = 1;
        $node->title = $data->field_contact_first_name_value . ' ' . $data->field_contact_last_name_value;
        $node->body = "";
        $node->teaser = "";
        $node->filter = variable_get('filter_default_format', 1);
        $node->format = FILTER_FORMAT_DEFAULT;
        $node->language = '';
        $node->revision = 0;
        $node->promote = 0;
        $node->created = time();
        $node->comment= 0;
        
        $node->taxonomy = array('tags' => array('11' => ($data->categories)));
        $node->field_contact_first_name[0]['value'] = $data->field_contact_first_name_value;
        $node->field_contact_last_name[0]['value'] = $data->field_contact_last_name_value;
        $node->field_contact_job_title[0]['value'] = $data->field_contact_job_title_value;
        $node->field_contact_organization[0]['value'] = $data->field_contact_organization_value;
        $node->field_contact_organization_r['nid']['nid'] = '463'; //this is a sample hard coded value
        $node->field_contact_account_sfid[0]['value'] = $data->field_contact_account_sfid_value;
        $node->field_contact_sfid[0]['value'] = $data->field_contact_sfid_value;
        
        $node->field_contact_email_optout[0]['value'] = 'false';
        $node->field_contact_phone_optout[0]['value'] = 'false';
        
        $node->field_contact_add1_city[0]['value'] = $data->field_contact_add1_city_value;
        $node->field_contact_add1_country[0]['value'] = $data->field_contact_add1_country_value;
        $node->field_contact_add1_zipcode[0]['value'] = $data->field_contact_add1_zipcode_value;
        $node->field_contact_add1_state[0]['value'] = $data->field_contact_add1_state_value;
        $node->field_contact_add1_street[0]['value'] = $data->field_contact_add1_street_value;
        $node->field_contact_add1_type[0]['value'] = 'Work';
        
        $node->field_contact_add2_city[0]['value'] = $data->field_contact_add2_city_value;
        $node->field_contact_add2_country[0]['value'] = $data->field_contact_add2_country_value;
        $node->field_contact_add2_zipcode[0]['value'] = $data->field_contact_add2_zipcode_value;
        $node->field_contact_add2_state[0]['value'] = $data->field_contact_add2_state_value;
        $node->field_contact_add2_street[0]['value'] = $data->field_contact_add2_street_value;
        $node->field_contact_add2_type[0]['value'] = 'Home';
        
        $node->field_contact_mobile_phone[0]['value'] = $data->field_contact_mobile_phone_value;
        $node->field_contact_home_phone[0]['value'] = $data->field_contact_home_phone_value;
        $node->field_contact_work_phone[0]['value'] = $data->field_contact_work_phone_value;
        $node->field_contact_asst_phone[0]['value'] = $data->field_contact_asst_phone_value;
        
        $node->field_contact_email1[0]['value'] = $data->field_contact_email1_email;
        $node->field_contact_email2[0]['value'] = $data->field_contact_email2_email;
        $node->field_contact_email_asst[0]['value'] = $data->field_contact_email_asst_email;
        
        $node->field_contact_assistant[0]['value'] = $data->field_contact_assistant_value;
        $node->field_contact_notes[0]['value'] = $data->notes;
          
        node_save($node);
        $nid = $node->nid;
        unset($node);
        
        //update status and drupalid in the queue
        $queryUpdate = "update custom_contact_insert set drupal_node_id = '$nid', status = '1' where id = '" . $data->id . "'";
        db_query($queryUpdate);
    }
    ?>

    вот вам высер. не мой на этот раз :)

    brainstorm, 14 Января 2011

    Комментарии (12)
  11. VisualBasic / Говнокод #5205

    −166

    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
    Public Sub DBOpen(Optional sFullPath As String = "")
        If sFullPath = "" Then sFullPath = sPath
        Dim f As Integer
        Dim l As Integer
        Dim tmp As String
        Dim sName As String
        Dim sSurname As String
        Dim sSex As String
        Dim dBirthdate As Date
        Dim sCity As String
        Dim sStreet As String
        l = 0
        f = FreeFile
        Open sFullPath For Input As #f
            While Not EOF(f)
                Line Input #f, tmp
                l = l + 1
            Wend
        Close #f
        If l > 0 Then
            ReDim asDB(0 To l - 1) As clsCitizen
            l = 0
            f = FreeFile
            Open sFullPath For Input As #f
                While Not EOF(f)
                    Input #f, sName, sSurname, sSex, dBirthdate, sCity, sStreet
                    Set asDB(l) = New clsCitizen
                    asDB(l).sName = sName
                    asDB(l).sSurname = sSurname
                    asDB(l).sSex = sSex
                    asDB(l).dBirthdate = dBirthdate
                    asDB(l).sCity = sCity
                    asDB(l).sStreet = sStreet
                    l = l + 1
                Wend
            Close #f
        End If
        sPath = sFullPath
    End Sub

    за что я ненавижу VB6

    а ведь по-другому никак = (

    Lure Of Chaos, 10 Января 2011

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