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

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

    +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
    echo '<!DOCTYPE html> ';
    ?>
    <<?='h'.'t'.'m'.'l'?>>
    <<?='h'.'e'.'a'.'d'?>>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title><?php echo htmlspecialchars($content['meta_title'])?></title>
    <meta name="keywords" content="<?php echo htmlspecialchars($content['meta_keys'])?>">
    <meta name="description" content="<?php echo htmlspecialchars($content['meta_desc'])?>">
    <link rel='icon' href='/favicon.jpg' type='image/x-icon' /> 
    
    ...
    
    
    </<?='b'.'o'.'d'.'y'?>>
    </<?='h'.'t'.'m'.'l'?>>

    ору

    LesterTeheMolester, 12 Октября 2015

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

    +9

    1. 1
    return [null, null, null, true]; // Critical error

    зато наш код никогда не выбрасывает исключения

    strax, 07 Октября 2015

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

    +1

    1. 1
    https://i.imgur.com/S0Ti1EO.png

    Макаки - они везде.

    gost, 06 Октября 2015

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    /* удивляюсь логике человека, написавшего это */
    
    //echo $a;
    print($a);

    Smoren, 01 Октября 2015

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

    +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
    StringBuilder errorMessage = new StringBuilder();
    int i = 0, j = 0;
    bool outcome = true;
    double value;
    string[] label = new string[] { label1.Text, label2.Text, label4.Text };
    
    textBox1.Text = textBox1.Text.Trim();
    textBox2.Text = textBox2.Text.Trim();
    textBox3.Text = textBox3.Text.Trim();
    
    foreach (string field in (new string[] { textBox1.Text, textBox2.Text, textBox3.Text }))
    {
    	try
    	{
    		if (field.Length == 0)
    			throw new Exception("отсутствует значение.\n");
    
    		if (j == 2)
    			value = int.Parse(field, NumberStyles.Integer);
    		else
    			value = double.Parse(field, NumberStyles.Float);
    
    		if (value <= 0)
    			throw new Exception("значение должно быть строго больше нуля.\n");
    
    		if (j == 2)
    		{
    			try
    			{
    				dateTimePicker1.Value.Date.AddMonths((int)value);
    			}
    			catch (Exception)
    			{
    				throw new Exception("превышено максимальное значение типа System.DateTime, " + DateTime.MaxValue.ToShortDateString() + ".\n" +
    									"Срок вклада не может превышать " + 
    									((DateTime.MaxValue.Year - dateTimePicker1.Value.Date.Year) * 12 +
    									DateTime.MaxValue.Month - dateTimePicker1.Value.Date.Month).ToString() + " мес. " + "от указанной даты оформления, " + dateTimePicker1.Value.Date.ToShortDateString() + ".\n");
    			}
    		}
    	}
    	catch (Exception e)
    	{
    		errorMessage.Append((++i).ToString() + ". " + label[j] + ": ");
    
    		switch (e.GetType().ToString())
    		{
    			case "System.FormatException":
    				errorMessage.AppendLine("неверный формат числа.\n");
    				break;
    
    			case "System.OverflowException":
    				{
    					if (j < 2)
    					{
    						errorMessage.AppendLine("значение не может быть обработано вещественным типом System.Double.");
    						errorMessage.AppendLine("Значение типа должно быть строго больше нуля, в промежутке (0; " + double.MaxValue.ToString() + "].\n");
    					}
    					else
    					{
    						errorMessage.AppendLine("значение не может быть обработано целочисленным типом System.Int32.");
    						errorMessage.AppendLine("Значение типа должно быть строго больше нуля, в промежутке (0; " + int.MaxValue.ToString() + "].\n");
    					}
    					break;
    				}
    
    			default:
    				errorMessage.AppendLine(e.Message);
    				break;
    		}
    
    		outcome = false;
    	}
    
    	j++;
    }

    Мастер исключений 80-го уровня.
    Хорошо, хоть не по мессаджам их разделяет.

    yamamoto, 28 Сентября 2015

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

    +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
    long long int Factorial(long long int m_nValue)
       {
           long long int result=m_nValue;
           long long int result_next;
           long long int pc = m_nValue;
           do
           {
               result_next = result*(pc-1);
               result = result_next;
               pc--;
           }while(pc>2);
           m_nValue = result;
           return m_nValue;
       }

    http://rosettacode.org/wiki/Factorial#C.2B.2B

    Abbath, 22 Сентября 2015

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

    +2

    1. 1
    2. 2
    3. 3
    f($scope.data.extraFields){
          $scope.data.extraFields = $scope.data.extraFields;
        }

    разбираю сайт после предыдущего разраба

    fxt, 13 Августа 2015

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

    +143

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if (strlen($this->post['Name']) >= 3) {
        $p = preg_split('/\s+/', $name) + [' ', ' '];
        sort($p);
    
        $permutation = [$p[0], $p[1], $p[2], $p[0], $p[1], $p[0], $p[2], $p[1], $p[0]];
        $name = join(' ', $permutation);
    
        $list = Model_Students::searchStudentsByName($name, $facultyID, $gradeID, $groupID);
    }

    С ребятами запилили полнотекстовый поиск фио. Функция из модели — вызов MySQL процедуры.

    Реалия простая — MySQL не умеет в split, не умеет в переменное количество параметров, не умеет в нечёткий поиск. Выкручиваемся как можем.

    xamgore, 20 Июля 2015

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

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    setExpanded : function(val) {
        val = val ? true : false;
        this._expanded = val;
    }

    beatmasta, 07 Июля 2015

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

    +148

    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
    //----Навигация
    if ($page != 1) $pervpage = '<a href=?page=1>Первая</a> | <a href=?page='. ($page - 1) .'>Предыдущая</a> | ';
    if ($page != $total) $nextpage = ' | <a href=?page='. ($page + 1) .'>Следующая</a> | <a href=?page=' .$total. '>Последняя</a>';
    if($page - 5 > 0) $page5left = ' <a href=?page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
    if($page - 4 > 0) $page4left = ' <a href=?page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
    if($page - 3 > 0) $page3left = ' <a href=?page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
    if($page - 2 > 0) $page2left = ' <a href=?page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
    if($page - 1 > 0) $page1left = '<a href=?page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
    if($page + 5 <= $total) $page5right = ' | <a href=?page='. ($page + 5) .'>'. ($page + 5) .'</a>';
    if($page + 4 <= $total) $page4right = ' | <a href=?page='. ($page + 4) .'>'. ($page + 4) .'</a>';
    if($page + 3 <= $total) $page3right = ' | <a href=?page='. ($page + 3) .'>'. ($page + 3) .'</a>';
    if($page + 2 <= $total) $page2right = ' | <a href=?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
    if($page + 1 <= $total) $page1right = ' | <a href=?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
    if ($total > 1)
    {
    Error_Reporting(E_ALL & ~E_NOTICE);
    echo "<div class=\"pstrnav\">";
    echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
    echo "</div>";
    }

    pi3141592653, 29 Июня 2015

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