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

    В номинации:
    За время:
  2. Куча / Говнокод #7935

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function Trig_d_Conditions takes nothing returns boolean
        if ( not ( true == true ) ) then
            return false
        endif
        return true
    endfunction

    Код написан на JASS. Данный язык был придуман компанией Blizzard и использован в игре WarCraft 3 (WC3).
    То что вы видите было сгенерировано стандартным редактором WC3.

    alexprey, 22 Сентября 2011

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

    +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
    function Parsing($raw)
    {
    
    	$RawProperty=array();
    	$Property=array();
    	$raw=str_ireplace("\n","",$raw);
    	$raw=str_replace("\r","<br/>",$raw);
    
    	preg_match_all("|<Policy>(.*)</Policy>|U",$raw,$RawProperty,PREG_OFFSET_CAPTURE);
    //print_r($RawProperty);
    	for ($k=0;$k<count($RawProperty[0]);$k++){
    
    		$Property[$k]['Insurer']=str_cut_btw_substrs("<InsurerLogoURL>","</InsurerLogoURL>",$RawProperty[0][$k][0]);
    		$Property[$k]['InsurerName']=str_cut_btw_substrs("<InsurerName>","</InsurerName>",$RawProperty[0][$k][0]);
    		$Property[$k]['Underwriter']=str_cut_btw_substrs("<UnderwriterName>","</UnderwriterName>",$RawProperty[0][$k][0]);
    		$Property[$k]['LinkURL']=str_cut_btw_substrs("<LinkURL>","</LinkURL>",$RawProperty[0][$k][0]);
    		$Property[$k]['Productname']=str_cut_btw_substrs("<ProductName>","</ProductName>",$RawProperty[0][$k][0]);
    		$Property[$k]['PremiumText']=str_cut_btw_substrs("<PremiumText>","</PremiumText>",$RawProperty[0][$k][0]);
    		$Property[$k]['PremiumEXText']=str_cut_btw_substrs("<PremiumEXText>","</PremiumEXText>",$RawProperty[0][$k][0]);
    		$Property[$k]['ExcessText']=str_cut_btw_substrs("<ExcessText>","</ExcessText>",$RawProperty[0][$k][0]);
    		$Property[$k]['LuggageText']=str_cut_btw_substrs("<LuggageText>","</LuggageText>",$RawProperty[0][$k][0]);
    		$Property[$k]['MedicalText']=str_cut_btw_substrs("<MedicalText>","</MedicalText>",$RawProperty[0][$k][0]);
    		$Property[$k]['CancelationText']=str_cut_btw_substrs("<CancelationText>","</CancelationText>",$RawProperty[0][$k][0]);
    		$Property[$k]['LiabilityText']=str_cut_btw_substrs("<LiabilityText>","</LiabilityText>",$RawProperty[0][$k][0]);
    		$Property[$k]['AdditionalFeatures']=str_cut_btw_substrs("<AdditionalFeatures>","</AdditionalFeatures>",$RawProperty[0][$k][0]);
    
    		//add fields "ExplanationText" and "IsShaded"
    		$Property[$k]['IsShaded']=str_cut_btw_substrs("<IsShaded>","</IsShaded>",$RawProperty[0][$k][0]);
    		$Property[$k]['ExplanationText']=str_cut_btw_substrs("<ExplanationText>","</ExplanationText>",$RawProperty[0][$k][0]);
    		$Property[$k]['IsBasicCover']=str_cut_btw_substrs("<IsBasicCover>","</IsBasicCover>",$RawProperty[0][$k][0]);
    		$Property[$k]['IsComprCover']=str_cut_btw_substrs("<IsComprCover>","</IsComprCover>",$RawProperty[0][$k][0]);
    
    								}
    	return $Property;
    }

    разбор xml ответа от сервера

    Rubaka, 20 Сентября 2011

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

    +161

    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
    // getter для поля в конфиге. Очень костылёвый гавноалгоритм. Потом обязательно переделать!
        public function read($section, $key){
           if($section == true or $this->prefix == true){
             if(isset($this->arr[$this->prefix.$section][$key])){
                return $this->arr[$this->prefix.$section][$key];
             } else {
                return false;
             }
           } else {
             if(isset($this->arr[$this->prefix.$section][$key])){
                return $this->arr[$this->prefix.$section][$key];
            } else {
                return false;
            }
           }
        }

    Все правильно сделал.

    djumpen, 15 Сентября 2011

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

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $url = $_SERVER['REQUEST_URI'].'/';
    $counter = substr_count($url, 'page=');
    if($counter!=0){
    preg_match('/(page=)(.*?)(\/)/', $url, $pag);
    $sim_o = array('page=', '/');
    $sim_z= array('','');
    $pag = str_replace($sim_o, $sim_z, $pag);
    $page = $pag[0];
    echo $page;
    }

    Проверяем наличие GET и выводим его же.

    OJA, 10 Сентября 2011

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

    +154

    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
    <?php
    function import_var($name,$source,$type,$maxlen=0) {
    	$retarr=array();
    	if(is_array($name)) { // если нужно обработать массив с именами
    		foreach($name as $v) {
    			$retarr[$v] = import_var($v,$source,$type,$maxlen);
    			// рекурсивно запускаем себя же
    		}
    	if(sizeof($retarr)>0) return $retarr; // возвращаем массив
    	}
    	// если нужно обработать одну переменную
    	switch($source) {
    		case 'G':
    			if (isset($_GET[$name])) {
    				$var=$_GET[$name];  // из GET
    			}
    		break;
    		case 'P':
    			if (isset($_POST[$name])) {
    				$var=$_POST[$name];  // из POST
    			}
    		break;
    		case 'C':
    			if (isset($_COOKIE[$name])) {
    				$var=$_COOKIE[$name];  // из Cookie
    			}
    		break;
    	}
    
    	if(!isset($var)) return false; // если переменная существует
    
    	if(is_array($var)) return false; // и если это не массив...
    
    	if(get_magic_quotes_gpc()) $var = stripslashes($var);
    	// убираем лишние бэкслэши
    
    	if(empty($var)) return false; // если переменная пуста
    
    	if ($maxlen>0) $var = substr($var,0,$maxlen); //обрубаем лишнее
    
    	switch($type) { // теперь обрабатываем в соответствии с типом
    		case 'INT' : // число integer
    			return is_integer($var) ? $var : intval($var);
    		break;
    		case 'NUM' : // число integer или float
    			return is_numeric($var) ? $var : false;
    		break;
    		case 'HTML' : // текст, в котором могут содержаться тэги
    			return trim(htmlspecialchars($var));
    		break;
    		case 'SQL' : // строка, которая попадет в SQL-запрос
    			return mysql_real_escape_string(htmlspecialchars($var));
    		break;
    		case 'MAIL'	: // email-адрес
    			return preg_match('/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{2,4}$/',$var) ? $var : false;
    		break;
    		case 'ALPHA' : // только буквенные символы
    			return preg_match("/^[а-яА-ЯёЁa-zA-Z]+$/",$var) ? $var : false;
    		break;
    		case 'ALPHANUM' : // числовые и буквенные символы
    			return preg_match("/^[а-яА-ЯёЁa-zA-Z0-9]+$/",$var) ? $var : false;
    		break;
    		case 'MD5' : // md5-хэш
    			return preg_match("/^[a-fA-F0-9]{32}+$/",$var) ? $var : false;
    		break;
    		case 'SHA1' : // sha1-хэш
    			return preg_match("/^[a-fA-F0-9]{40}+$/",$var) ? $var : false;
    		break;
    		case 'BOOL': // булева величина
    			return ($var=="1" || $var=="true" || $var=="on") ? true : false;
    		break;
    	}
    }
    ?>

    http://raz0r.name/releases/funkciya-dlya-obrabotki-vxodyashhix-dannyx/

    sectus, 09 Сентября 2011

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

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    $transaction_number = (int)$this->security->xss_clean(trim(htmlspecialchars(substr($transaction_number, 0, 50))));
    
    if(!$transaction_number OR $transaction_number < 0)
    			$transaction_number = 0;

    один из наших программистов пишет.
    CodeIgniter.

    themars, 07 Сентября 2011

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

    +126

    good luck, suckers!

    Lure Of Chaos, 05 Сентября 2011

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

    +976

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public static bool MegaDispose(this IDisposable thіs)
    {
      if (thіs != null)
      {
        thіs.Dispose();
        return true;
      }
      return false;
    }

    CPPGovno, 05 Сентября 2011

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

    +175

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if (l1->Initilalize("4D353141",true))
    	StatusBarBottom->Panels->Items[2]->Text="Плата XXX загружена";
    else StatusBarBottom->Panels->Items[2]->Text="Не обнаружена плата L791, ном. 4D353141";
    
    if (l1->Initilalize("4D353129",true))
    	StatusBarBottom->Panels->Items[2]->Text="Платы XXX загружены";
    else StatusBarBottom->Panels->Items[2]->Text="Не обнаружена плата XXX, ном. 4D353129";
    
    if (l1->Initilalize("4D353129",true) && l1->Initilalize("4D353129",true) )
    	StatusBarBottom->Panels->Items[2]->Text="Загружены две платы XXX";

    Копипаста - враг программиста. Чувак инициализировал одну плату 4 раза!!!

    phys-tech, 05 Сентября 2011

    Комментарии (16)
  11. Куча / Говнокод #7653

    +146

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    Делфи есть светочь всего человечества... 
    и мне всё пофиг...
    СИонистам просьба тут слюной не брызгать...
    
    тут обсуждать только величие великого паскаля и его семейство... можно также чуть чуть о обероне и модуле...
    
    положительно воспринимаються стихи и песни про дельфиноф в героическом ракурсе (например о героических победах в холиварах против СИПиПишникоф)
    
    
    всякие джокеры, лакмусы и прочие нупы - фтопку, кг/ам, йаду...

    http://www.gamedev.ru/flame/forum/?id=12560

    CPPGovno, 25 Августа 2011

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