- 1
http://pastebin.com/HmLsBTsp
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+147
http://pastebin.com/HmLsBTsp
+156
class CLoader
{
protected static $_importPaths = array(APPLICATION_PATH);
public static function import($path)
{
self::$_importPaths[] = APPLICATION_PATH . '/' . $path;
}
public function classExist($className)
{
return class_exists($className) || interface_exists($className);
}
public static function autoload($className)
{
foreach(self::$_importPaths as $path)
{
if(is_file($fileName = $path . '/' . $className . '.php'))
{
include $fileName;
break;
}
}
}
}
spl_autoload_register(array('CLoader', 'autoload'));
Гавнокод или нет? Идея в том, чтобы нормально можно было написать if(CLoader::classExist('Router'))...
Может я чего не дочитал, но если добавлять пути с либами в include_path, а в функции autoload просто писать include $className . '.php', то class_exists('Router') выкинет ошибку, если файл Router.php не найден.
+161
<!-------------------- Left menu -------------------------->
<tr>
<td valign="top" width="188" class="text">
<table width="188" border="0" cellspacing="0" cellpadding="10">
<tr>
<td class="tl">Content</td>
</tr>
</table>
<?
global $SS_SECTION_NAME, $months2, $level, $SS_SECTION, $info, $arrInterest, $db, $is_photo, $ar_title, $is_contain, $id, $shablon;
if ($prev == 'yes') $add = " AND t.is_confirm!=2 AND t.ref_id=0 ";
else $add = " AND t.is_confirm!=0 AND t.is_visible=1 ";
$sql = "SELECT t.tree_id, t.name, s.name as section, t.is_contain FROM trees t, sections s WHERE t.root_id=3 AND t.section_id = s.section_id ".$add." ORDER BY t.order_by";
$db->query($sql);
$Rec = array();
$i = 0;
while($db->next_record()) {
$Rec[$i++] = $db->Record;
}
reset($Rec);
?>
Проект который нужно переписать на Yii framework. Писал человек с большим сроком работы программиста чем я. Видать про фреймворки не знал. Код не весь, так как он огромен.
P.S. В проекте более 2000 файлов с таким содержанием.
+157
$content=file_get_contents("http://7ion.ru");//берем страницу
$LinksArray=NULL;//тут будут ссылки
preg_match_all("/<a[[:print:]]href=["|'](.*?)["|'].*?>(.*?)<.{0,1}a.{0,1}>/i",$content,$LinksArray,PREG_PATTERN_ORDER);//применяем регулярку
var_dump($LinksArray);//выводим ссылки
Один товарищ с таким же ником, как у меня долго и упорно пытался доказать, что кодит лучше меня.
Когда я взломал его мегосекурную кмс (надо было пароль на мыле сменить все же, эх, добрая я душа), он меня материл и говорил, что написал код в 12 лет а щас он ниибаца мастер в свои 18.
Не став возражать, что в 12 лет в похапе еще половины функциона им используемого не было, просто посмотрили кто первым напишет кмс.
Я вообще ничего не стал писать, лол, а он что-то накалял и стал вести блог. Вот вся предыстория.
Решил я его вдруг почитать.
http://7ion.ru/index.php?q=news&a=17 - Парсинг страницы на PHP
Выдача - четвертая ссылка в первой десятке гугла.
Потом, спрашивается, откуда говнокодеры берутся.
+166
function utf8_substr($str,$start,$end){
preg_match_all("/./u", $str, $ar);
if(func_num_args() >= 3) {
$end = func_get_arg(2);
return join("",array_slice($ar[0],$start,$end));
} else {
return join("",array_slice($ar[0],$start));
}
}
Вылысыпыдысты
+170
$letters = array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z");
foreach($letters as $x){
if(strpos($_POST['integers'], $x)){
die("No letters Please!");
}
}
Проверка переменной, нет ли в ней чего-нибудь кроме цифр.
Комментарий автора улыбнул ещё больше: "There might be a few bugs"
Источник: http://forums.tizag.com/showthread.php?t=2939
+163
str_replace('-','/',date("Y-m-d",($from+(60*60*24*$i))))
Как-то очень спешил и сам себе наговнокодил, ну куда деваться, со всеми бывает )
+162
$uploadedFileNameParts = explode('.',$fileName);
$uploadedFileExtension = array_pop($uploadedFileNameParts); //pathinfo($fileName, PATHINFO_EXTENSION);
//Это наверно круче и быстрей, чем array('jpeg', 'jpg', 'gif', 'png')
$validFileExts = explode(',', 'jpeg,jpg,png,gif');
$extOk = false;
foreach($validFileExts as $key => $value)
{
if( preg_match("/$value/i", $uploadedFileExtension ) )
{
$extOk = true;
}
}
// if(!in_array($fileExtension, array('png', 'jpg', 'gif', 'jpeg'), false)) не катит...
if ($extOk == false)
{
echo JText::_( 'INVALID EXTENSION' );
return;
}
//...
if( !is_int($imageinfo[0]) || !is_int($imageinfo[1]) || !in_array($imageinfo['mime'], $validFileTypes) )
{
//Кто нибудь встречал картинки с размером 0 на x(где x > 0)..?
//....
}
Из туториала http://docs.joomla.org/Creating_a_file_uploader_in_your_compone nt ...
+159
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;
}
}
+155
class mysql_act extends main {
function mysql_count($zap, $m) {
$q = mysql_query($zap);
if ($m == 'count') {
$qc = mysql_num_rows($zap);
} else
$qc = mysql_fetch_array($q);
return $qc;
}
function mysql_method($method ,$arr, $db, $wh) {
$i = 0;
foreach ($arr as $k => $v) {
$i++;
if (count($arr)==$i)
$par .= '`'. $k .'`=\''.$v.'\'';
else
$par .= '`'. $k .'`=\''.$v.'\' &&';
}
$n=0;
foreach ($wh as $k => $v) {
$n++;
if (count($arr)==$n)
$parw .= '`'. $k .'`=\''.$v.'\'';
else
$parw .= '`'. $k .'`=\''.$v.'\' &&';
}
switch ($method) {
case 'SELECT':
$req = 'SELECT * FROM '. $db .' WHERE '. $par;
break;
case 'UPDATE':
$req = 'UPDATE '.$db.' SET '.$parw.' WHERE '. $par;
}
$q['req'] = mysql_query($req);
$q['arr'] = mysql_fetch_array($q['req']);
return $q;
}