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

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

    +163

    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
    <?php
    header('Access-Control-Allow-Origin: http://domain/');
    $file = file_get_contents($_GET['parse']);  
    $title = explode("<title>", $file);
    $title = explode("</title>", $title[1]);
    $title = $title[0];
    $arr = explode("</head>", $file);
    $arr = $arr[0]; 
    $arr = explode("<head>", $arr);
    $arr = $arr[1]; 
    $arr = str_replace("name", "id", $arr);
    $arr = str_replace("content", "value", $arr);
    $arr = str_replace("meta", "input", $arr);
    $arr = str_replace("link", "//", $arr);
    $arr = str_replace("script", "//", $arr);
    $arr = str_replace("type", "//", $arr);
    $arr = str_replace("charset", "//", $arr);
    $arr = str_replace("src", "//", $arr);
    $arr = str_replace("href", "//", $arr);
    $arr = str_replace("http", "//", $arr);
    $arr = str_replace("java", "//", $arr);
    $arr = str_replace("media", "//", $arr);
    $arr = str_replace("html", "//", $arr);
    print "<input id=\"title\" value=\"{$title}\">";
    print $arr;  
    ?>

    http://www.php.ru/forum/viewtopic.php?p=258765#258765

    Devzirom, 19 Января 2011

    Комментарии (4)
  3. Java / Говнокод #5298

    +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
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    class Scribble extends Component implements ActionListener {
    	
        protected Frame f;
        protected int w,h;
        
        public Scribble(Frame f, int w, int h){		
    	this.f = f;
    	this.w = w;
            this.h = h;
        }   
        @Override
        public Dimension getPreferredSize(){
    	return new Dimension(w,h);
        }	
        public void actionPerformed(ActionEvent event){		
        	String s = event.getActionCommand();
        	if(s.equals("Красный")) 
        	  Miner.currColor = Color.red;
        	else if(s.equals("Зелёный")) 
        	  Miner.currColor = Color.green;
        	else if(s.equals("Синий")) 
        	  Miner.currColor = Color.blue;
        	else if(s.equals("Серый")) 
        	  Miner.currColor = Color.gray;
        }
    }

    C меню выбора цвета полный провал
    dwinner - заслуженное звание java-быдло 2005!

    dwinner, 16 Января 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function DateFromDBToHr($date)
    {
    	$datetime = explode(" ", $date);
    	$dates = explode("-", $datetime[0]);
    	return (intval($dates[0])) ? date("d-M-Y", mktime(0, 0, 0, $dates[1], $dates[2], $dates[0])) : false;
    }

    про то, что форматировать дату можно в запросе или про существование strtotime автор даже не догадывается

    elw00d, 14 Января 2011

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

    −126

    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
    #!/bin/bash
    c=0;
    declare -a fls;
    cat $*| while read line 
    do                   
    #    echo "line $line №$c"
    fls[$c]=$line;
    let c++;
    for((i=0;i<=${#fls[@]}-1;i++))
    {
    for((i2=$i+1;i2<=${#fls[@]};i2++))
    {
    #  echo "${fls[$i]} ${fls[$i2]}";
    if [ ${fls[$i]} = "${fls[$i2]}" ];then
      echo "Zeile $i ist gleich Zeile $i2";
    #else
    #  echo "Строка $i не равна строке $i2";
    fi
    }
    }
    done

    Находит одинаковые строки в файле

    AliceGoth, 13 Января 2011

    Комментарии (4)
  6. Pascal / Говнокод #5261

    +114

    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
    99. 99
    TMapObj = record
        Size: integer;
        Selected, Valid: boolean;
        case Kind: TKind of
    // дохрена пропущено
       koTxr: (
            TxrFileName: string [31];
            tLast: integer;
            TxrCorrect: boolean;
            LODS: array [0 .. 3] of TBitmap;
            Pixel: TBitmap;
          );
          koItem: (
            Location: TLocation;
            ItemEndSel: boolean;        // выделена ли для перетаскивания
            TimeBeforeReborn: integer;  // времени до восстановления
            DescrIndex: integer;        // индекс описателя
            Rotation: integer;
    
            TeamColor, EnemyColor: integer;
    
            iLast: integer;
    
            CannotGet: boolean;
    
            case TKindItem of
              kiWeapon: (
                iwpFallen: boolean;
                iwpBulletsLeft: integer;
                iwpState: TWeaponState;
              );
              kiHuman: (
                ihState: integer;
              );
              kiFlag: (
                ifState: TFlagState;
                ifHome: integer;
              );
              kiScepter: (
                isState: TScepterState;
              );
          );
          koItemDescr: (
            ItemFileName: string [31];  // файл с описанием предмета
            idLast: integer;
            ItemCorrect: boolean;
            ItemName: string [31];      // название предмета
            SpriteIndName: string [31];
            SpriteInd: integer;         // картинка
            RebornTime: integer;        // время перерождения
            case KindItem: TKindItem of
              kiHealth: (
                hlCount: integer;
              );                          
              kiShield: (
                shCount: integer;
              );
              kiFlag: (
                flTeam: integer;
              );        
              kiSL: (
                slTeam: integer;
              );
              kiAmmo: (
                amCount: integer;
                amIndex: integer;       // тип патрона
              );
              kiWeapon: (                          // всё про пушку
                wpAmmoIndex: integer;              // тип патронов
                wpKeyNumber: integer;              // кнопка на клавиатуре
                wpBulletsInCharge: integer;        // патронов в обойме
                wpInitBullets: integer;            // изначальное число патронов
                wpMaxBullets: integer;             // максимальное число патронов
                wpShotBullets: integer;            // патронов за раз
                wpReloadTime, wpShotTime: integer; // время перезарядки, скорострельность (скорострельность в миллисекундах)
                wpDispersion, wpKickBack: integer; // разброс самого оружия и отдача
                wpBasic: integer;       // базовое ли
                wpDamage: integer;      // урон
                wpDistance, wpBulletSpeed: integer;    // предельная дальность выстрела, скорость пуль
                wpSound: integer;       // номер ноты
                wpColor: TColor;        // цвет
              );
          );   
          koBullet: (
            bLast: integer;
    
            BLocP: array [0 .. 1] of TPoint;
            BLocRoom: integer;
    
            BVector: TPoint;           // нормализованный вектор направления
    
            BDamage: integer;          // параметры, которые надо передавать в процедуру создания пули
            BSpeed: integer;
            BLengthLeft: integer;
            BOwner: integer;
            Bn, Bm: TDistFunc;
            BColor: TColor;
        );
    end;

    Меня попросили показать, до чего может довести структурное программирование при отрицании ООП. Разветвлённая структура с кучей ветвей.
    Для лучшего эффекта обмазываться вместе с http://govnokod.ru/4249

    TarasB, 13 Января 2011

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

    +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
    session_start();
    $value = array(
           "severity" => $severity,
           "message" => $message,
           "filepath" => $filepath,
           "line" => $line
    );
    if(empty($_SESSION['data']))
    {
        $_SESSION['data'] = serialize($value);
    }
    else
    {
        unset($_SESSION['data']);
        $_SESSION['data'] = serialize($value);
    }
    header("Location: ".BASE_URL."/error/php_error/");

    Вот обработчик ошибок из уже упомянутого мною проекта. Тот же самый кодер обрабатывает ошибки. При более чем одной ошибке валиться весь проект, из-за того что сессия уже стартовала. Увидев это у меня возник facepalm.

    bazyaka, 12 Января 2011

    Комментарии (4)
  8. VisualBasic / Говнокод #5204

    −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
    Private Sub btnNew_Click()
        Dim i As Integer
        Dim asCopy() As clsCitizen
        ReDim asCopy(LBound(modCitizen.asDB) To UBound(modCitizen.asDB)) As clsCitizen
        For i = LBound(modCitizen.asDB) To UBound(modCitizen.asDB)
            Set asCopy(i) = modCitizen.asDB(i)
        Next i
        ReDim modCitizen.asDB(UBound(modCitizen.asDB) + 1) As clsCitizen
        For i = LBound(asCopy) To UBound(asCopy)
            Set modCitizen.asDB(i) = asCopy(i)
        Next i
        Set modCitizen.asDB(UBound(modCitizen.asDB)) = New clsCitizen
        modCitizen.asDB(UBound(modCitizen.asDB)).bNew = True
        iRecNum = UBound(modCitizen.asDB)
        RecordRead
        UpdateControls
        LockMe True
    End Sub

    вот через какое место мучительно вспоминал давно забытый, старый добрый VB6

    процедура дополняет массив новым элементом

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

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

    +165

    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
    $query = mysql_query("SELECT * FROM `accounts` WHERE `login` = '".@$_COOKIE['sc2tACC']."' LIMIT 1");
    if ($query and @isset($_COOKIE['sc2tACC']) AND mysql_num_rows($query)) {
    	$auth = mysql_fetch_array($query);
    	if($auth['password'] == $_COOKIE['sc2tPASS'] and @isset($_COOKIE['sc2tPASS'])) {
    		$AS = "OK";
    		if($_SERVER['PHP_SELF'] != "/chat.php" and $auth['status'] != 1) {
    			mysql_query("UPDATE `accounts` SET `timestamp` = '".microtime(1)."', `ip` = '".$_SERVER['REMOTE_ADDR']."', `lastpage` = '".$_SERVER['REQUEST_URI']."'  WHERE `id` = '".$auth['id']."' LIMIT 1;");
    		}
    	} else {
    		$loginError = "Неверный пароль";
    	}
    } else {
    	$loginError = "Неверный логин";
    }

    ne0n, 09 Января 2011

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

    +145

    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
    <?xml version="1.0" encoding="UTF-8"?>
    <ui version="4.0">
     <class>QRSelector</class>
     <widget class="QWidget" name="QRSelector">
      <property name="geometry">
       <rect>
        <x>0</x>
        <y>0</y>
        <width>400</width>
        <height>300</height>
       </rect>
      </property>
      <property name="windowTitle">
       <string>QRSelector</string>
      </property>
      <widget class="QLabel" name="label">
       <property name="geometry">
        <rect>
         <x>10</x>
         <y>10</y>
         <width>371</width>
         <height>16</height>
        </rect>
       </property>
       <property name="text">
        <string/>
       </property>
      </widget>
     </widget>
     <layoutdefault spacing="6" margin="11"/>
     <resources/>
     <connections/>
    </ui>

    qrselector.ui

    Resager, 06 Января 2011

    Комментарии (4)
  11. Pascal / Говнокод #5142

    +100

    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
    dats:=datetostr(DateTimePicker1.Date);
    datp:=datetostr(DateTimePicker2.Date);
    datsc:=copy(dats,1,2);
    datsm:=copy(dats,4,2);
    datsg:=copy(dats,7,4);
    datpc:=copy(datp,1,2);
    datpm:=copy(datp,4,2);
    datpg:=copy(datp,7,4);
    idatsc:=strtoint(datsc);
    idatsm:=strtoint(datsm);
    idatsg:=strtoint(datsg);
    idatpc:=strtoint(datpc);
    idatpm:=strtoint(datpm);
    idatpg:=strtoint(datpg);
    tdatc:=strtoint(copy(p[i,6],1,2));
    tdatm:=strtoint(copy(p[i,6],4,2));
    tdatg:=strtoint(copy(p[i,6],7,4)); 
    if not ((idatsg>tdatg) or ((idatsg=tdatg) and (idatsm>tdatm)) or ((idatsc>tdatc) and (idatsm>=tdatm)) or (idatpg<tdatg) or ((idatpg=tdatg) and (idatpm<tdatm)) or ((idatpc<tdatc) and (idatpm<=tdatm))) then

    Проверка или дата с массива включена в диапазон дат с DateTimePicker'ов (еще и с ошибкой в условии)
    И вся эта фигня в цикле... Как это увидел, валерьянкой отпаивали меня долго

    Nikitiy_II, 04 Января 2011

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