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

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

    +158

    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
    <?php
    class pvalidator extends validator {	
    	public function fname($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
    	}
    	
    	public function lname($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
    	}
    	
    	public function tname($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё]{3,16}$/iu", $value);
    	}
    	
    	public function nickname($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё \-]{3,32}$/iu", $value);
    	}
    	
    	public function country($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё \-]{2,32}$/iu", $value);
    	}
    	
    	public function sity($value) {
    		return (bool) preg_match("/^[А-Яа-яЁё \-]{2,16}$/iu", $value);
    	}
    	
    	public function school($value) {
    		return (bool) preg_match("/^[№А-Яа-яЁё 0-9\-]{2,16}$/iu", $value);
    	}
    	
    	public function hresponse($value) {
    		return (bool) preg_match("/^.{0,32}$/iu", $value);
    	}
    	
    	public function activity($value) {
    		return (bool) preg_match("/^.{0,32}$/iu", $value);
    	}
    	
    	public function interest($value) {
    		return (bool) preg_match("/^.{0,32}$/iu", $value);
    	}
    }
    ?>

    Моё свежее, с утра высранное!

    Devzirom, 10 Января 2011

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $i=0;
    foreach($info['members'] as $m_name){
    	$i++;
    		$date = date($fdate,$m_name['time']);
    	 $block_vars['num_online'].='<a href="index.php?name=user&op=userinfo&user='.$m_name['u_id'].'">' .$m_name['u_name'].'</a>, ';
    	  if($mcount>0) 
    	 if($i>$mcount) break;
    	}

    Мартин, 09 Января 2011

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

    +158

    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
    <?php
    class VIEW_View
    {
    	private $_path;
    	private $_template;
    	private $_var = array();
    
    	public function __construct($path = '')
    	{
    		$this->_path = $_SERVER['DOCUMENT_ROOT'] . $path;
    	}
    
    	public function set($name, $value)
    	{
    		$this->_var[$name] = $value;
    	}
    
    	public function __get($name)
    	{
    		if (isset($this->_var[$name])) return $this->_var[$name];
    		return '';
    	}
    
    	public function display($template, $strip = true)
    	{
    		$this->_template = $this->_path . $template;
    		if (!file_exists($this->_template)) die('Шаблона ' . $this->_template . ' не существует!');
    
    		ob_start();
    		include($this->_template);
    		echo ($strip) ? $this->_strip(ob_get_clean()) : ob_get_clean();
    	}
    
    	private function _strip($data)
    	{
    		$lit = array("\\t", "\\n", "\\n\\r", "\\r\\n", "  ");
    		$sp = array('', '', '', '', '');
    		return str_replace($lit, $sp, $data);
    	}
    
    	public function xss($data)
    	{
    		if (is_array($data)) {
    			$escaped = array();
    			foreach ($data as $key => $value) {
    				$escaped[$key] = $this->xss($value);
    			}
    			return $escaped;
    		}
    		return htmlspecialchars($data, ENT_QUOTES);
    	}
    }
    ?>

    Тема: "foreach в шаблонизаторе." http://www.php.ru/forum/viewtopic.php?t=29937

    Заголовок в блоге: "Меня зовут — Анатолий Ларин - Архив блога - Прощай Smarty или простой шаблонизатор"
    http://larin.in/archives/16

    Devzirom, 08 Января 2011

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

    +158

    1. 1
    $(this).parents('#orig').clone().appendTo('#main');

    Клонирование элементов формы

    Мартин, 02 Января 2011

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

    +158

    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
    @s_sort	= sort { @{$a}[11] <", @{$b}[11] } @s;
    @s	= sort { @{$a}[11] <", @{$b}[11] } @s_sort;
    @s_sort	= sort { @{$a}[11] <", @{$b}[11] } @s;
    for($i = 0; $i < $f_num; $i++){
      $loop_data = ();
      for($m = 1; $m <= $std; $m++){
        if($spcs[$spcs_indx[$s_sort[$m][2]]][9] == $i && $s_sort[$m][1] <> ''){
          $row_data;
          $row_data{name}	= $_sort[$m][1];
          $row_data{ball}	= round($s_sort[$m][11],2);
          $row_data{krs}	= $s_sort[$m][3];
          $row_data{grp}	= $spcs[$spcs_indx[$s_sort[$m][2]]][2]."-".substr(($f_k_y - $s_sort[$m][3]),2,2)."-".$s_sort[$m][4];
          array_push($loop_data,$row_data);
         }
       }

    Продолжение http://govnokod.ru/5072 . Для меня остались загадкой первые три строчки. Они, к тому же, еще и не работают.

    xandrster, 29 Декабря 2010

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

    +158

    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
    /*
    -----------------------------------------------------------------
    Формируем Карту Сайта и записываем в Кэш
    -----------------------------------------------------------------
    */
    function sitemap() {
        global $rootpath, $realtime, $set;
        $links_count = 140;
        $file = $rootpath . 'files/cache/sitemap.dat';
        if (file_exists($file) && filemtime($file) > ($realtime - 604800)) {
            // Считываем ссылки из Кэша
            return file_get_contents($file);
        } else {
            $out = '';
            // Карта Форума
            $req = mysql_query("SELECT * FROM `forum` WHERE `type` = 'r'");
            if (mysql_num_rows($req)) {
                $out .= '<b>Forum Map</b>' . "\r\n";
                while ($res = mysql_fetch_assoc($req)) {
                    $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `refid` = '" . $res['id'] . "' AND `type` = 't' AND `close` != '1'"), 0);
                    if ($count) {
                        $text = html_entity_decode($res['text']);
                        $text = mb_substr($text, 0, 30);
                        // Подсчитываем число блоков ссылок
                        $pages = ceil($count / $links_count);
                        if($pages > 1){
                            for($i = 0; $i < $pages; $i++){
                                $out .= '<br /><a href="' . $set['homeurl'] . '/sitemap/forum.php?id=' . $res['id'] . '&amp;p=' . $i . '">' . functions::checkout($text) . ' (part ' . ($i + 1) . ')</a>' . "\r\n";
                            }
                        } else {
                            $out .= '<br /><a href="' . $set['homeurl'] . '/sitemap/forum.php?id=' . $res['id'] . '">' . functions::checkout($text) . '</a>' . "\r\n";
                        }
                    }
                }
            }
            // Карта Библиотеки
            $req = mysql_query("SELECT * FROM `lib` WHERE `type` = 'cat' AND `ip` = '0'");
            if (mysql_num_rows($req)) {
                $out .= '<br /><br /><b>Library Map</b>' . "\r\n";
                while ($res = mysql_fetch_assoc($req)) {
                    $text = html_entity_decode($res['text']);
                    $text = mb_substr($text, 0, 30);
                    $out .= '<br /><a href="../library/index.php?id=' . $res['id'] . '">' . functions::checkout($text) . '</a>' . "\r\n";
                }
            }
            if (!empty($out)) {
                // записываем Кэш ссылок
                if (!file_put_contents($file, $out)) {
                    return 'Cache file write error!';
                }
                return $out;
            } else {
                return false;
            }
        }
    }
    
    /*
    -----------------------------------------------------------------
    Показываем карту сайта
    -----------------------------------------------------------------
    */
    if (!defined('_IN_JOHNCMS')) {
        define('_IN_JOHNCMS', 1);
        require('../incfiles/core.php');
        require('../incfiles/head.php');
        echo '<div class="menu">' . sitemap() . '</div>';
        require('../incfiles/end.php');
    } else {
            echo '<div class="menu"><div class="sitemap">' . sitemap() . '</div></div>';
    }

    JohnCMS 4, sitemap/index.php
    Этот движок, кстати, почти самый распространнённый в wap

    NadiaVita, 28 Декабря 2010

    Комментарии (43)
  8. PHP / Говнокод #5092

    +158

    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
    $mazovia[18];
    	$iso[18];
    
    	$mazovia[0]  = chr(134);$iso[0]=chr(177);		//a~
    	$mazovia[1]  = chr(143);$iso[1]=chr(161);		//A~
    	$mazovia[2]  = chr(141);$iso[2]=chr(230);		//c~
    	$mazovia[3]  = chr(149);$iso[3]=chr(198);		//C~
    	$mazovia[4]  = chr(145);$iso[4]=chr(234);		//e~
    	$mazovia[5]  = chr(144);$iso[5]=chr(202);		//E~
    	$mazovia[6]  = chr(146);$iso[6]=chr(179);		//l~
    	$mazovia[7]  = chr(156);$iso[7]=chr(163);		//L~
    	$mazovia[8]  = chr(164);$iso[8]=chr(241);		//n~
    	$mazovia[9]  = chr(165);$iso[9]=chr(209);		//N~
    	$mazovia[10] = chr(162);$iso[10]=chr(243);		//o~
    	$mazovia[11] = chr(163);$iso[11]=chr(211);		//O~
    	$mazovia[12] = chr(158);$iso[12]=chr(182);		//s~
    	$mazovia[13] = chr(152);$iso[13]=chr(166);		//S~
    	$mazovia[14] = chr(166);$iso[14]=chr(188);		//z~
    	$mazovia[15] = chr(160);$iso[15]=chr(172);		//Z~
    	$mazovia[16] = chr(167);$iso[16]=chr(191);		//z|
    	$mazovia[17] = chr(161);$iso[17]=chr(175);		//Z|
           
            $strmazovia="";
    	$strIso="";
    	for ($i=0;$i<=17;$i++){
    		$strmazovia=$strmazovia."\\".$mazovia[$i];
    		$strIso= $strIso."\\".$iso[$i];
    	}
    
    
    	function convert($str){
    		global $strmazovia;
    		global $strIso;
    	        return StrTr($str,$strmazovia,$strIso);
    	}

    xaoc, 28 Декабря 2010

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

    +158

    1. 1
    return $lines[(rand(0,count($lines)-1)*10)/10]; // ололо, говнокод, но так лучше работает 0_o

    Нашел в своём, относительно недавно, написанном коде. Под чем я это писал?! В упор не помню..
    А что самое страшное - я же знаю про array_rand(). Хотя, тут больше доставляет *10/10.

    mr.The, 25 Декабря 2010

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

    +158

    1. 1
    2. 2
    3. 3
    $where = "(`user_id` = ".$id." and `user_fr` = ".$user->Get('u_id').") or (`user_id` = ".$user->Get('u_id')." and `user_fr` = ".$id.")";
        
    $inc = array_merge($db->Select('friends', $where), $db->Select('friends_incoming', $where));

    Проверка на существования дружбы или предложений дружбы между двумя пользователями (каунтом $inc).

    Мартин, 15 Декабря 2010

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    while ($iii<$_POST["nnn"])
    {
    $Klass = takeYearKlass($Klass,$_POST["vipl_".$iii."ygod"]);
    print ("<br>За ".$iii."-й год было ".$_POST["vipl_".$iii."ygod"]." выплат и класс стал ".$Klass);
    $iii++;
    }
    print ("<br><b>Итоговый класс:</b> $Klass");

    В добавок к чудному явасрипту (http://govnokod.ru/4929) мне достался и сам код на php....
    В прочем там такого добра хватает))) можно и html, и css выложить)))
    Как говориться, буду писать еще))

    Zuzzuk, 15 Декабря 2010

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