1. PHP / Говнокод #4296

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // seen in real project
    
    class SomeClass extends AnotherClass {
        protected $_AnotherClass = null;
        
        public function __construct() {
            $this->_AnotherClass = new AnotherClass();
        }
    }

    Сочная вырезка из структуры классов.

    shizzard, 20 Сентября 2010

    Комментарии (13)
  2. PHP / Говнокод #4295

    +152

    1. 1
    $this->Справочники = null;

    А вроде серьезная система...

    shizzard, 20 Сентября 2010

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

    +174

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    //коллаж картинок
    $total = 7;
    $i = 1;
    while ($i <= $total)
     {				
    	echo '<div><img src="'.$path.'picture/collage/'.$i.'.jpg" alt="Промышленное оборудование: трубогибы, пресс механический" title="Промышленное оборудование: трубогибы, пресс механический" /></div>'."\n";
    	$i++;
    	if($i > $total) break;
    }

    по моему простенько, но со вкусом :)

    t0xy, 20 Сентября 2010

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

    +173

    1. 1
    2. 2
    3. 3
    // app/code/Core/Mage/Catalog/Model/Resource/Eav/Attribute.php:68
    
    Mage::throwException('0_o');

    Из Magento 1.4.1.0.
    Когда вылетело при дебаге, решил, что пора на дурку двигать...

    Helios, 20 Сентября 2010

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

    +172

    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
    // подключение библиотек и конфига
    require_once($_SERVER["DOCUMENT_ROOT"]."/config.php");
    require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/tree.php");
    require_once($_SERVER["DOCUMENT_ROOT"]."/content/lib/func.php");
    extract($_GET);
    if (isset($d1)&&(f_del_date($d1)!="")) {
       $arr[0]=f_n_date($d1); // очистка первой переменной
       if (isset($d2)&&(f_del_date($d2)!="")) {
    	$arr[1]=f_n_date($d2); // очистка второй переменной
    	if (isset($d3)&&(f_del_date($d3)!="")) {
    	   $arr[2]=f_n_date($d3); // очистка третьей переменной
    	   if (isset($d4)&&(f_del_date($d4)!="")) {
    		$arr[3]=f_n_date($d4); // очистка четвертой переменной
    		if (isset($d5)&&(f_del_date($d5)!="")) {
    		   $arr[4]=f_n_date($d5); // очистка пятой переменной
    		   if (isset($d6)&&(f_del_date($d6)!="")) {
    			$arr[5]=f_n_date($d6); // очистка шестой переменной
    			if (isset($d7)&&(f_del_date($d7)!="")) {
    			   $arr[6]=f_n_date($d7); // очистка седьмой переменной
    			   if (isset($d8)&&(f_del_date($d8)!="")) {
    				$arr[7]=f_n_date($d8); // очистка восьмой переменной
    				if (isset($d9)&&(f_del_date($d9)!="")) {
    				   $arr[8]=f_n_date($d9); // очистка девятой переменной
    				   if (isset($d10)&&(f_del_date($d10)!="")) {
    					$arr[9]=f_n_date($d10); // очистка десятой переменной
    					if (isset($d11)&&(f_del_date($d11)!="")) {
    					   $arr[10]=f_n_date($d11); // очистка одинадцатой переменной
    
    					}
    				   }
    				}
    			   }
    			}
    		   }
    		}
    	   }
    	}
       }
    }

    Это чудесная CMS Black Crystal (Кристалл-чернуха), админка у нее такая же, как и сам код.

    nakham, 20 Сентября 2010

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

    +166

    1. 1
    header('Location: adm.php?url=' . nl2br($_SERVER['PHP_SELF']));

    nakham, 20 Сентября 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    $db->query ( "SELECT * FROM " . USERPREFIX . "_usergroups ORDER BY id ASC" );
    	
    	while ( $row = $db->get_row () ) {
    		
    		$user_group[$row['id']] = array ();
    		
    		foreach ( $row as $key => $value ) {
    			$user_group[$row['id']][$key] = $value;
    		}
    	
    	}

    До сих пор не могу понять смысл вложенного цикла..

    stpkys, 20 Сентября 2010

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

    +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
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    /*
    [... выдержки из файла search.php ...]
    */
    //Создание коротких переменных
    	$q = $_GET['q'];
    	
    	if(intval($q)) {
    		//если в поле поиска введено число, перенаправить на просмотр заметки с этим id
    		echo "<meta http-equiv=\"refresh\" content=\"0; url=view.php?id=$q\" />";
    		exit();
    	}
    	//Приведение типа входных данный в строковый
    	$q = strval($q);
    	$q = secure_input_string($q);
    	
    	if (!isset($q) || empty($q) || !is_string($q)) {
    		//Неверные входные данные, скорее всего пользователь не ввел никаких данных в форму поиска
    		echo '<html><head><meta http-equiv="content-type" content="text/html;charset=utf-8" />
      <link href="style/generalstyle.css" rel="stylesheet" /></head><body>';
    	  echo '<div class="error_window" align="center">Ошибка.<br />Вы не ввели данные для поиска.</div>';
    	  echo "<meta http-equiv=\"refresh\" content=\"1; url={$_SERVER['HTTP_REFERER']}\" />";
    	  //Выход из сценария
    	  exit('</body></html>');
    	}

    Тонкости надмозгового мироздания из серии http://govnokod.ru/4278
    Орфография и пунктуация сохранены

    istem, 20 Сентября 2010

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

    +160

    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
    /*
    [... выдержки из файла functions.php ...]
    */
    function secure_input_string($string,$strip = true) {
    	/*Функция позволяет обезопасить вводимые пользователем данные путем применения ряда функций в входной строке
    	 * Входная строка должна быть текстом (string) */
    	if ((bool)$strip) {
    		//Усечение пробелов
    		$string = trim($string);
    		//Удаление PHP и HTML тегов
    		//$string = strip_tags($string);
    		//Перевод специальных символов в html эквиваленты
    		$string = htmlspecialchars($string);
    		//Отмена спец-символов обратными косыми чертами
    	}
    	//Удаление попыток вставки кода php или xml
    	$badcode = array('<?php','?>');
    	$code = array('<','>');
    	$string = str_replace($badcode,$code,$string);
    	return $string;
    }
    
    function get_rus_date($ymy) {
    	/*Функция для замены английский названий месяцев русскими названиями*/
    	//Предпологается, что данные поступили в формате ДД JAUNARY 2010, иначе выполнение функции не имеет смысла
    	//Массив с датами на английском
    	$eng = array('January','February','March','April','May','June','July','August','September',
    				'October','November','December');
    	//Массив с датами на русском
    	$rus = array('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь',
    				'Октябрь','Ноябрь','Декабрь');
    	//Замена английских месяцов на русские
    	$ymy = str_replace($eng,$rus,$ymy);
    	return $ymy;
    }
    
    function str_size($size) {
    	//Функция для предаставления размера файла из функции filesize (возвращающуу байты) в удобочитаемый вид
    	//Приведение к строковому типу
    	$size = (string)$size;
    	if (strlen($size) == 0) {
    		//Не удалось получить размер файла
    		return false;
    	}
    	else if (strlen($size) <= 3) {
    		//Размер указан в Байтах
    		return $size.' byte';
    	}
    	else if (strlen($size) >= 4 && strlen($size) < 7) {
    		//Размер указан в Килобайтах
    		$size = (int)$size;
    		$size_k = $size/1024;
    		//Удалить двойную точность
    		$size_k = (int)$size_k;
    		return $size_k.' Kb';
    	}
    	else if (strlen($size) >= 7 && strlen($size) < 10) {
    		//Размер указан в Мегабайтах
    		$size = (int)$size;
    		$size_m = $size/1024;
    		$size_m = $size_m/1024;
    		//Оставить только один знак после точки
    		$size_m = round($size_m,1);
    		$size_m = $size_m.' Мб';
    		return $size_m;
    	}
    	else if (strlen($size) >= 10 && strlen($size) < 13) {
    		//Размер указан в Гигабайтах
    		$size = (int)$size;
    		$size_m = $size/1073741824;
    		//Оставить только один знак после точки
    		$size_m = round($size_m,1);
    		$size_m = $size_m.' Гб';
    		return $size_m;
    	}
    	else {

    Продолжение трагикомической эпопеи http://govnokod.ru/4278
    Орфография и пунктуация сохранены

    istem, 20 Сентября 2010

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

    +118

    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
    /**
     * Функция создает новую таблицу. 
     * @param $name - имя новой таблицы. Имя должно быть проверено (например функцией mysql_real_escape_*)
     * @return TRUE - если новая таблица была создана или FALSE - если нет
     */ 
    function createTable($name) {
        $retval = false;
        if(!empty($name)){
            $query = "CREATE TABLE IF NOT EXISTS `" . $name . "` (`Adres` varchar(150) DEFAULT NULL, `send` int(1) DEFAULT NULL )";
            $result = mysql_query($query);
            if($result){
                $retval = true;
            }
        }
        return $retval;
    }

    Вроде все хорошо и красиво. Но есть говнинка которая все портит

    Vasiliy, 19 Сентября 2010

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