- 1
eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 32
+163
eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');
            > Итак нередко возникает необходимость вставки на свой сайт PHP скрипт стороннего производителя. Однако по умолчанию данная возможность отключена в скрипте. Поэтому предлагаем вам небольшой хак, позволяющий использовать любой PHP код в шаблонах
>
> Откройте файл index.php найдите строчку:
> echo $tpl->result['main'];
>
> и замените ее на 
> eval (' ?' . '>' . $tpl->result['main'] . '<' . '?php ');
>
> Все, вы можете использовать сторонние скрипты на вашем сайте. Данных хак не рекомендуется к использованию на версиях ниже 3.0
"... небольшой хак ..."
Ага, небольшой. Нету просто слов... DLE.
"Данных хак не рекомендуется к использованию на версиях ниже 3.0"
Я бы вообще его не рекомендовал бы даже.
http://dle-news.ru/tips/33-ispolzovanie_ljubykh_php_vstavok_v_shabl  onakh.html
P.S.: знаю что 2006, но все равно можно было и получше написать.
        
+155
<?php
/**
 * Get category tree.
 * 
 * @param db $db
 * @return array
 */
function getCategoryTree ($db) {
	$query = $db->query('SELECT * FROM dle_category ORDER BY posi');
	
	if ($query->num_rows <= 0) {
		return FALSE;
	}
	
	$categories = $query->fetch_all(MYSQLI_ASSOC);
	
	$tree = array();
	
	foreach ($categories as $cat) {
		if ($cat['parentid'] == '0') {
			$tree[$cat['id']] = $cat;
		}
		else {
			$tree[$cat['parentid']]['subcategories'][] = $cat;
		}
	}
	
	return $tree;
}
/**
 * Display categories.
 * Sorry for my french 'echo'.
 * 
 * @param array $category
 */
function displayCategory ($category) {
	$html = '';
	
	foreach ($category as $cat) {
		$html .= '<li class="lonely "><a href="/">' . $cat['name'] . '</a>';
		
		if ($cat['subcategories']) {
			$html .= '<span class="accordion"></span><ul>';
			$html .= displayCategory ($cat['subcategories']);
			$html .= '</ul>';
		}
		
		$html .= '</li>';
	}
	
	return $html;
}
// Getting categories
$categories = getCategoryTree($db);
if ($categories) {
	echo displayCategory ($categories);
}
else {
	echo '<li>Нету категорий</li>';
}
            Мой говно модуль для DLE для отображения дерева категорий в меню.
Почему DLE разработчики не могли это из коробки сделать? И почему там куча говнокода внутри? (на Англ. комментарии потому что привык)
        
+155
<?php
$data = file_get_contents("/path/to/photo.jpg"); // Read the file's contents
$name = 'myphoto.jpg';
force_download($name, $data);
            Я знаю конечно что это не говнокод, но последствия будут ужасными если не передать сразу же в функцию данные (т.к. PHP будет копировать содержимое дважды), представьте себе файл в 2МБ и много запросов, сервер капут в два раза быстрее.
- https://ellislab.com/codeigniter/user-guide/helpers/download_helper.html
        
+155
// Отладочная информация
if(1)
{
	print "<!--\r\n";
	$time_end = microtime(true);
	$exec_time = $time_end-$time_start;
  
  	if(function_exists('memory_get_peak_usage'))
		print "memory peak usage: ".memory_get_peak_usage()." bytes\r\n";  
	print "page generation time: ".$exec_time." seconds\r\n";  
	print "-->";
}Simpla CMS, красавцы! :D
+151
// /vendor/composer/autoload_real.php
// Строка 18
if (NULL !== self::$loader) {
// ...
            Composer видимо такой же мудрый как и Йода...
( http://en.wikipedia.org/wiki/Yoda_conditions )
        
+153
/**
	 * Компиляция плейсхолдера
	 */
	private function sql_compile_placeholder($tmpl)
	{ 
		$compiled = array(); 
		$p = 0;	 // текущая позиция в строке 
		$i = 0;	 // счетчик placeholder-ов 
		$has_named = false; 
		while(false !== ($start = $p = strpos($tmpl, "?", $p)))
		{ 
			// Определяем тип placeholder-а. 
			switch ($c = substr($tmpl, ++$p, 1))
			{ 
				case '%': case '@': case '#': 
					$type = $c; ++$p; break; 
				default: 
					$type = ''; break; 
			} 
			// Проверяем, именованный ли это placeholder: "?keyname" 
			if (preg_match('/^((?:[^\s[:punct:]]|_)+)/', substr($tmpl, $p), $pock))
			{ 
				$key = $pock[1]; 
				if ($type != '#')
					$has_named = true; 
				$p += strlen($key); 
			}
			else
			{ 
				$key = $i; 
				if ($type != '#')
					$i++; 
			} 
			// Сохранить запись о placeholder-е. 
			$compiled[] = array($key, $type, $start, $p - $start); 
		} 
		return array($compiled, $tmpl, $has_named); 
	} 
	/**
	 * Выполнение плейсхолдера
	 */
	private function sql_placeholder_ex($tmpl, $args, &$errormsg)
	{ 
		// Запрос уже разобран?.. Если нет, разбираем. 
		if (is_array($tmpl))
			$compiled = $tmpl; 
		else
			$compiled	 = $this->sql_compile_placeholder($tmpl); 
	
		list ($compiled, $tmpl, $has_named) = $compiled; 
	
		// Если есть хотя бы один именованный placeholder, используем 
		// первый аргумент в качестве ассоциативного массива. 
		if ($has_named)
			$args = @$args[0]; 
	
		// Выполняем все замены в цикле. 
		$p	 = 0;				// текущее положение в строке 
		$out = '';			// результирующая строка 
		$error = false; // были ошибки? 
	
		foreach ($compiled as $num=>$e)
		{ 
			/* .. тут куча кода .. */
		} 
		$out .= substr($tmpl, $p); 
	
		// Если возникла ошибка, переделываем результирующую строку 
		// в сообщение об ошибке (расставляем диагностические строки 
		// вместо ошибочных placeholder-ов). 
		if ($error)
		{ 
			$out = ''; 
			$p	 = 0; // текущая позиция 
			foreach ($compiled as $num=>$e)
			{ 
				list ($key, $type, $start, $length) = $e; 
				$out .= substr($tmpl, $p, $start - $p); 
				$p = $start + $length; 
				if (isset($e['error']))
				{ 
					$out .= $e['error']; 
				}
				else
				{ 
					$out .= substr($tmpl, $start, $length); 
				} 
			} 
			// Последняя часть строки. 
			$out .= substr($tmpl, $p); 
			$errormsg = $out; 
			return false; 
		}
		else
		{ 
			$errormsg = false; 
			return $out; 
		} 
	}
            Вот такой велосипед у симплы, типа о PDO не слышали?
Файл api/database.php, SimplaCMS.
        
+152
<?php
class Config {
/* ... */
	public function __construct () 
	{
		// Читаем настройки из дефолтного файла
		$ini = parse_ini_file(dirname(dirname(__FILE__)).'/'.$this->config_file);
		// Записываем настройку как переменную класса
		foreach($ini as $var=>$value)
			$this->vars[$var] = $value;
/* ... */
            Взято из файла api/config.php из Simpla CMS.
Нельзя было $this->vars = parse_ini_file(dirname(dirname(__FILE__)  ).'/'.$this->config_file); написать что ли?
        
+153
// строка 139
$parts = explode('@',self::$callbacks[$pos]);
$file = strtolower('app/controllers/'.$parts[0].'.php'); 
//try to load and instantiate model     
if(file_exists($file)){
    require $file;
}
//grab all parts based on a / separator 
$parts = explode('/',self::$callbacks[$pos]); 
//collect the last index of the array
$last = end($parts);
//grab the controller name and method call
$segments = explode('@',$last); 
//instanitate controller
$controller = new $segments[0]();
$params = count($matched);
//call method and pass any extra parameters to the method
switch ($params) {
    case '0':
        $controller->$segments[1]();
        break;
    case '1':
        $controller->$segments[1]($matched[0]);
        break;
    case '2':
        $controller->$segments[1]($matched[0],$matched[1]);
        break;
    case '3':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2]);
        break;
    case '4':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3]);
        break;
    case '5':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4]);
        break;
    case '6':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4],$matched[5]);
        break;
    case '7':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4],$matched[5],$matched[6]);
        break;
    case '8':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4],$matched[5],$matched[6],$matched[7]);
        break;
    case '9':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4],$matched[5],$matched[6],$matched[7],$matched[8]);
        break;
    case '10':
        $controller->$segments[1]($matched[0],$matched[1],$matched[2],$matched[3],$matched[4],$matched[5],$matched[6],$matched[7],$matched[8],$matched[9]);
        break;
}
// ...Вот так SimpleMVCFramework передает аргументы контролеру *facepalm*
−413
// CCTexture2D.m
- (id) initWithString:(NSString*)string dimensions:(CGSize)dimensions alignment:(CCTextAlignment)alignment vertAlignment:(CCVerticalAlignment)vertAlignment lineBreakMode:(CCLineBreakMode)lineBreakMode font:(id) uifont
{
	/* ... */
	[self releaseData:data];
	return self;
}
/* ... */
- (void) releaseData:(void*)data
{
	//Free data
	free(data);
}Освобождение памяти, взято из Cocos2d 1.x
+158
// Выше PHP + HTML
$redirect = "
<script language='JavaScript'> 
  window.location.href = 'http://www.p-ride.ru'
</script>
";
// ...
$query1 = "SELECT main_id FROM email WHERE email = '$email'";
$idquery = mysql_query($query1);
$id = mysql_fetch_row($idquery);
// ...
if(in_array($id[0], $idarray2))
{
	echo $starthtml;
	echo $redirect;
	// ^ тут
	echo "<p>Такой почтовый адрей уже используется, ведите пожалуйста другой адрес или восстановите пароль. Вы сейчас будете перенаправлены на главную страницу, если этого не произошло, кликните <a href='http://p-ride.ru'>сюда</a>.</p>";
	echo $endhtml;
}Редирект аля ПоХаПэ + отображение сообщение которое не будет показано.