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

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

    +159

    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
    class Template{
    	var $result,$template_dir="templates";
    	function ParseTemplate($template,$var_name,$value){
    		$out=preg_replace("/$var_name/i","$value",$template);
    		return $out;
    	}
    	function ClearTemplate($var){
    		$var=str_replace("\n","",$var);
    		$var=str_replace("\t","",$var);
    		$var=str_replace("\r","",$var);
    		$var=str_replace("   "," ",$var);
    		$var=str_replace(">  <","><",$var);
    		return $var;
    	}
    	function Template ($values=array(),$template_name="body.html",$body="",$dir="") {
    		$this->template_dir=PATH_TO_TEMPLATES;
    		if (!$body) $body=file_get_contents($this->template_dir."/".$template_name);
    		if ($values) foreach ($values as $name => $value) {
    			$body=$this->ParseTemplate($body,$name, $value);
    		}
    		$this->result=$body;
    	}
    }

    Пришел к нам сайт на обслуживание... Как-бы шаблонизатор... )))

    nethak, 10 Июня 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if ($rightDisplayDelete == 1) {
        $images = $model->getData(1);
        $this->tmpl['pagination']	= &$model->getPagination(1);
    } else {
        $images = $model->getData(0);
        $this->tmpl['pagination']	= &$model->getPagination(0);
    }

    И снова модуль Phocagallery для Joomla!

    somebody, 20 Мая 2011

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

    +159

    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
    bool CSomeClass::Init( int argc, wchar_t* argv[] )
    
    {
    
          bool isOk = true;
    
          bool goOn = true;
    
          for( int i = 0; isOk && goOn; ++i ) {
    
                switch( i ) {
    
                      case 0:
    
                            isOk = checkCommandLine( argc, argv );
    
                            break;
    
                      case 1:
    
                            isOk = checkFileExistence();
    
                            break;
    
                      case 2:
    
                            isOk = initFiles();
    
                            break;
    
                      default:
    
                            goOn = false;
    
                }
    
          }
    
          return isOk;
    
    }

    w100, 14 Мая 2011

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

    +159

    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
    function colorQuote($message) {
        global $tinyib, $mysql_posts_table, $mysql_database, $mysql_password, $mysql_username, $mysql_host;
        $message=str_replace("<", "<", $message);
        $message=str_replace("'", "'", $message);
        $message=str_replace("\n", "<br>\n", $message);
        $cd = getcwd();
        $lastSlash = 0;
        if (($lastSlash = strrpos($cd, '/')) === false)
        {
            if (($lastSlash = strrpos($cd, '\\')) === false)
            {
                $lastSlash = 0;
            }
        }
        $message_lines=explode("\n", $message);
        for($i=0; $i<count($message_lines); $i++) {
            if(preg_match("#^(\*|\+|-) .*#si", $message_lines[$i])) {
                if(!preg_match("#^(\*|\+|-) .*#si", $message_lines[$i-1]) && substr($message_lines[$i-1], 0, 4)!="<ul>" && substr($message_lines[$i-1], 0, 4)!="<li>"){
                    $message_lines[$i]="<ul>".preg_replace("#^(\*|\+|-) (.*)#si", "<li>\\2</li>", $message_lines[$i]);
                }
                $message_lines[$i]=preg_replace("#^(\*|\+|-) (.*)#si", "<li>\\2</li>", $message_lines[$i]);
                if(!preg_match("#^(\*|\+|-) .*#si", $message_lines[$i+1]) && substr($message_lines[$i+1], 0, 5)!="</ul>" && substr($message_lines[$i+1], 0, 4)!="<li>"){
                    $message_lines[$i].="</ul>";
                }
            }
            if(preg_match("|^[0-9]+\..*|si", $message_lines[$i])) {
                if(!preg_match("|^[0-9]+\..*|si", $message_lines[$i-1]) && substr($message_lines[$i-1], 0, 4)!="<ol>" && substr($message_lines[$i-1], 0, 4)!="<li>"){
                    $message_lines[$i]="<ol>".$message_lines[$i];
                }
                $message_lines[$i]=preg_replace("|[0-9]+\.(.*)|si", "<li>\\1</li>", $message_lines[$i]);
                if(!preg_match("|^[0-9]+\..*|si", $message_lines[$i+1]) && substr($message_lines[$i+1], 0, 5)!="</ol>" && substr($message_lines[$i+1], 0, 4)!="<li>"){
                    $message_lines[$i].="</ol>";
                }
            }
            $message_lines[$i]=preg_replace("|^>(.*)|is", "<span class=\"unkfunc\">>\\1</span>", $message_lines[$i]);
            if(preg_match("|^[\s]{4}.+$|si", $message_lines[$i])){
                $message_lines[$i]=preg_replace("|^[\s]{4}(.+)$|si", "<pre>\\1</pre>", $message_lines[$i]);
            }
        }
        $message=implode("\n", $message_lines);
        $message=preg_replace("|\*\*([^\*\*]+)\*\*|si", "<strong>\\1</strong>", $message);
        $message=preg_replace("|\*([^\*]+)\*|si", "<em>\\1</em>", $message);
        $message=preg_replace("|__([^__]+)__|si", "<span style='text-decoration: underline;'>\\1</span>", $message);
        $message=preg_replace("#(http://|ftp://|mailto:|irc:|news:)([^\s]+[^\s\.,?(!):;])#si", "<a href='\\1\\2'>\\1\\2</a>", $message);
        $message=preg_replace("|%%([^%%]+)%%|si", "<span class='spoiler'>\\1</span>", $message);
        $message=preg_replace("|`([^`]+)`|si", "<pre>\\1</pre>", $message);
        return $message;
    }

    Вставил почти целиком, только кусочек вырезал. PHP делает просто лютый пиздец!
    Откуда - сами догадаетесь.

    Skelet0n, 13 Мая 2011

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

    +159

    1. 1
    2. 2
    3. 3
    while ($row = @mysql_fetch_array($this->_sqlResult, $result_type)):
    	$return[] = $row;
    endwhile;

    1_and_0, 13 Мая 2011

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

    +159

    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
    Codeigniter - если дата не соответсвует шаблону не изменять в БД и вывести предупреждение.
    $this->db->query("INSERT INTO Experience
    										(	Company,
    											Location,
    											IndustyID,
    											".($StartDate[$id]!=FALSE?"StartDate,":!(bool)$this->data['message'] .= '<p style="color:red;">Invalid Start Date #'.$id.' format</p>')."
    											".($EndDate[$id]!=FALSE?"EndDate,":!(bool)$this->data['message'] .= '<p style="color:red;">Invalid End Date #'.$id.' format</p>')."
    											JobTitle,
    											JobDesc,
    											CandID)
    								VALUES ('$Company',
    										'".$Location[$id]."',
    										'".$Industy[$id]."',
    										".($StartDate[$id]!=FALSE?"'".$StartDate[$id]."',":'')."
    										".($EndDate[$id]!=FALSE?"'".$EndDate[$id]."',":'')."
    										'".$JobTitle[$id]."',
    										'".$JobDesc[$id]."',
    										'".$this->session->userdata('id')."')");

    peinguin, 11 Мая 2011

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

    +159

    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
    class CVal
    {
    private:
        int m_val;
    public:
        __declspec(property(get=get_Val, put=put_Val)) int Val;
        int get_Val()
        {
            return m_val;
        }
        void put_Val(int val)
        {
            m_val = val;
        }
    };

    Говно в рамках стандарта C++.

    Говногость, 10 Мая 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $value = "";
    $content = $content;
    $val = "\$content->" . $field->name;
    $fieldname = $field->name;
    
    eval("if (isset($val)) \$value = \"$val\";");
    $value = JText::_($value);
    $value = stripslashes($value);

    Joomla. Adsmanager

    Jetti, 10 Мая 2011

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

    +159

    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
    if (!$vid['video_code']) {
            $vars['player'] = 'Онлайн промотр недоступен (не указан плеер)';
            if ($vid['image'] != '') {
                $vars['image'] = RealPath2($config['video']['images_dir'] . SafeDB($vid['image'], 255, str));
                $vars['thumb_image'] = RealPath2($config['video']['images_dir'] . 'thumbs/' . SafeDB($vid['image'], 255, str));
            } else {
                $vars['image'] = false;
            }
        } else {
            if (!$user->Auth and $config['video']['hide_video_guest']) {
                $vars['player'] = '<a href="index.php?name=user&op=registration">Зарегистрируйтесь для просмотра видео онлайн.</a>';
                if ($vid['image'] != '') {
                    $vars['image'] = RealPath2($config['video']['images_dir'] . SafeDB($vid['image'], 255, str));
                    $vars['thumb_image'] = RealPath2($config['video']['images_dir'] . 'thumbs/' . SafeDB($vid['image'], 255, str));
                } else {
                    $vars['image'] = false;
                }
            } else {
                $vars['player'] = $vid['video_code'];
                $vars['image'] = false;
            }
        }

    Мартин, 07 Мая 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $this->get_list_with_rights(
    			'C.*, `core_users`.username as username'.(defined('COMMENTS_BLOG_TYPE') ? ", count(cm.id)" : ", 0")." as cnt_comments",  			//список возвращаемых полей
    			$this->table_prefix.'_blogs AS C LEFT JOIN `core_users` ON `core_users`.id=C.author_id'.
    	(defined('COMMENTS_BLOG_TYPE') 
    			? " LEFT JOIN {$this->table_prefix}_comments_resource r ON (r.item_id=C.id AND r.type="
    			.COMMENTS_BLOG_TYPE.") LEFT JOIN {$this->table_prefix}_comments cm ON cm.resrc_id=r.id" : ""), 	//список таблиц, учавствующих в запросе
    			'C',  												//алиас основной таблицы, из которой берутся права
    			'', 'C.id');  		//условие-фильтр, группировка записей, порядок вывода записей

    ABO.CMS, модуль блогов.
    И чем автору не угодили стандартные функции?

    ling, 05 Мая 2011

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