- 1
strrev(strstr(strrev(substr(strip_tags(stripslashes(htmlspecialchars_decode($row['description']))), 0, 250))," "))
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+157
strrev(strstr(strrev(substr(strip_tags(stripslashes(htmlspecialchars_decode($row['description']))), 0, 250))," "))
Вывод краткого содержания материала, найдено на просторах самописного сайта.
+148
if (!$_FILES['image']['size'] > 0) {
return;
}
и что самое интересное - оно делает то, что автор пытался изобразить!
+149
// Hack - blacklist
if ($msg->abonent == '12345678910')
die("Database error");
Найдено в крупном и сложном проекте, посреди часто вызываемого кода - проверка на забаненный номер (номер изменён).
+150
$Not = array('\\',",","/","¬","#",";",":","~","[","]","{","}",")","(","*","^","%","$","<",">","?","!",'"',"'","|");
...
function check($string){
$string = preg_replace("/[^a-zA-Z a-яА-яёЁ]/i", "",$string);
$string = str_replace($Not,'',$string);
$string = htmlspecialchars($string);
return $string;
}
Нашёл у себя убойный фильтр. Работает как зверь :-)
+147
<?/**
* Возвращаем все товары по фильтру
* @author Алексей Чигинцев
* Доработал и убрал участки еблизма: Арбора Сергей
* Почувствовал, что могу все улучшить, но все разъебал еще хуже чем было изначально: Влад Черноскутов
* Ниче не знаю техничкой роблю: Алексей MOSkvin
* имхо: Вадим стиль руки хуй
* @param array $options - список используемых параметров
* @return array|false - массив товаров либо false
*/
function getGoodsFilter($options = array(),$_FILTER) {
$price_expr = '`price`';$_sub = $_out = array();$sql = $_sub_child = '';
$cat = new Catalog(self::$db);
$cat->load();
$filter_query = self::parseFilterQuery($_FILTER);
if ($options['SS'] && (!$options['first'] && !$options['second'] && !$options['last']))
{//получаем всех детей
$_sub_child = $cat->get_child(41);
if($options['id_man'][0]!=''){$whereand1 = $filter_query;}else{$whereand1 ="";}
if($options['sort_type']){$order1 = ' ORDER BY `'.$options['sort_field'].'` '.$options['sort_type'];
} else {$order1 =""; }
if (!empty($_sub_child)){$i=0;
foreach ($_sub_child as $v){
if($i<count($_sub_child)-1){$_sub_chil .= $v.','; $i++; }else{$_sub_chil .= $v; }}
if($whereand1!=""){$_sub[] = self::$db->resultAsArray('SELECT * FROM `'.self::$table.'` WHERE `is_dollar`= "0" `cid` IN('.$_sub_chil .') '.$whereand1.$order1);
}else{$_sub[] = self::$db->resultAsArray('SELECT * FROM `'.self::$table.'` WHERE `is_dollar`= "0" cid` IN('.$_sub_chil .') AND name` LIKE "%'.mysql_real_escape_string($options['SS']).'%" '.$order1
);}}
if ($_sub){ foreach($_sub as $v){if (!empty($v)){
foreach ($v as $v_child){
$_out[$v_child['id']] = $v_child;
}}}}
if (!empty($_out)) return $_out;
else return false;
}elseif ($options['SS'] && ($options['first'] || $options['second'] || $options['last']))
{ $whereand1 = "";
if($options['id_man'][0]){$whereand1 = $filter_query;}
if($options['sort_type']){
$order1 = ' ORDER BY `'.$options['sort_field'].'` '.$options['sort_type'];}else{$order1 ="";}
$_where_price = false;
if ($options['last']){switch ($options['last']){
case 1: $_where_price .= ' '.$whereand1.'AND ((`is_dollar`=0 AND (`price` > 0 AND `price` <= 25000)) OR (`is_dollar`=1 AND (`price` > 0 AND `price` <= '.__dollar(25000).'))) '.$order1; break;
case 2: $_where_price .= ' '.$whereand1.'AND ((`is_dollar`=0 AND (`price` > 25000 AND `price` <= 50000)) OR (`is_dollar`=1 AND (`price` > '.__dollar(25000).' AND `price` <= '.__dollar(50000).'))) '.$order1; break;
case 3: $_where_price .= ' '.$whereand1.'AND ((`is_dollar`=0 AND `price` > 50000) OR (`is_dollar`=1 AND (`price` > '.__dollar(50000).')))'.$order1; break;
default: $where_price = false; break;
}}$_sub_child = $cat->get_child($options['first']);
if (!$_sub_child){$_out = self::$db->resultAsArray('SELECT * FROM `'.self::$table.'` WHERE
`name` LIKE "%'.mysql_real_escape_string($options['SS']).'%"
AND `is_dollar`= "0" AND `cid`='.intval($options['first']).'
' . ($options['second'] ? ' AND `id_man`='.intval($options['second']).' ' : '') . '
' . ($_where_price ? $_where_price : '') . ''.$whereand1.$order1);
if (!empty($_out)) return $_out;else return false;
}else{foreach ($_sub_child as $v){
$_sub[] = self::$db->resultAsArray('SELECT * FROM `'.self::$table.'` WHERE
`name` LIKE "%'.mysql_real_escape_string($options['SS']).'%"
AND `is_dollar`= "0" AND `cid`='.intval($v).'
' . ($options['second'] ? ' AND `id_man`='.intval($options['second']).' ' : '') . '
' . ($_where_price ? $_where_price : '') . '');
}if ($_sub){foreach ($_sub as $v){if (!empty($v)){
foreach ($v as $v_child){
$_out[$v_child['id']] = $v_child;
}}}}
if (!empty($_out)) return $_out;else return false;
}}elseif (!$options['SS'] && ($options['first'] || $options['second'] || $options['last'])){
$_where_price = false;$whereand1 = "";
if($options['id_man'][0]){$whereand1 = $filter_query;}
if($options['sort_type']){$order1 = ' ORDER BY CAST(`' .$options['sort_field'].'` AS SIGNED) '.$options['sort_type'];}else{$order1 ="";}
if ($options['last']){switch ($options['last']){
case 1: $_where_price .= ' '.$whereand1.'AND (`is_dollar`=1 AND (`price` > 0 AND `price` <= '.__dollar(25000).')) '; break;
case 2: $_where_price .= ' '.$whereand1.'AND (`is_dollar`=1 AND (`price` > '.__dollar(25000).' AND `price` <= '.__dollar(50000).')) '; break;
case 3: $_where_price .= ' '.$whereand1.'AND (`is_dollar`=1 AND (`price` > '.__dollar(50000).'))'; break;
default: $where_price = false; break;
}}
//получаем детей для $options['first'] - если дети есть ищем по их массиву
$_sub_child = $cat->get_child($options['first']);
}else return false;}
Работаю в веб-студии, расклад такой:
1) Чувак-извращенец как-то поднял сайт с фильтром по каталогу, уволился.
2) Пришел второй чувак, ему поручили фикс этого творения - сломал все что работало.
3) Пришел я, починил все необычными костылями, вроде как работало
4) Пришел еще один чувак, доработал до мульти выбора в фильтре)) - все слетело, поставил мега крутые костыли, они и представлены
5) Пришел очередной чувак и порешал все, терь работает, но все костыли живут и будут жить))))))
+150
function news222($record)
{
$rrr = "answers.com";
global $aaa;
$keyword = $q;
$q = $q;
$qnew = ucwords($q);
global $q;
$lw = array();
$qw = array();
$aw = array();
$sw = array();
$con = mysql_connect("10.38.16.4","xxxx","xxxxx");
if($con)
{
mysql_select_db("sql_stats");
$c = mysql_fetch_array(mysql_query("select count(*) from webqna where u_query = '".mysql_real_escape_string($_REQUEST['q'])."'"));
if($c[0]==0)
{
$kk5=0;
for($jj=0;$jj<15;$jj++)
{
if($kk5 == 4)
break;
if($jj==0)
{
if (($record['GROUP/GROUP/RESULT/SITE-LINK'])){
if(strstr($record['GROUP/GROUP/RESULT/TITLE'],"..."))
continue;
$aaa=1;
global $gotRecords;
$gotRecords = TRUE;
$lw[$kk5] = $record['GROUP/GROUP/RESULT/DISPLAY-URL'];
$qw[$kk5] = $record['GROUP/GROUP/RESULT/TITLE'];
$aw[$kk5] = $record['GROUP/GROUP/RESULT/DESCRIPTION'];
$sw[$kk5] = $rrr;
}
}
else
{
if (($record['GROUP/GROUP/RESULT/SITE-LINK@'.$jj])){
global $gotRecords;
$gotRecords = TRUE;
if(strstr($record['GROUP/GROUP/RESULT/TITLE@'.$jj],"..."))
continue;
$lw[$kk5] = $record['GROUP/GROUP/RESULT/DISPLAY-URL@'.$jj];
$qw[$kk5] = $record['GROUP/GROUP/RESULT/TITLE@'.$jj];
$aw[$kk5] = $record['GROUP/GROUP/RESULT/DESCRIPTION@'.$jj];
$sw[$kk5] = $rrr;
}
}
$kk5++;
}
+144
//***Никогда не использовать))))
static function isset_not_empty($val){
if(isset($val) and !empty($val)) return true;
return false;
}
погорячившийся))
+159
if(@$_POST['submit']) {
$title = "title";
$string = "";
$equal = "=";
$amper = "&";
$to = '[email protected]';
$from='[email protected]';
foreach($_POST as $key => $value) {
foreach($value as $v) {
$string=$string.$key.$equal.$v.$amper;
}
}
mail($to, $title, $string, 'From:'.$from);
}
+160
$query = "INSERT INTO analiz SET
obegin = $duss,
vbegin = $leas,
lbegin = $duls,
opodk = $dusc,
vpodk = $leac,
lpodk = $dulc,
oend = $duse,
vend = $leae,
lend = $dule,
ozatr = $dusZ,
vzatr = $leaZ,
lzatr = $dulZ,
ooplat = $dusU,
voplat = $leaU,
loplat = $dulU,
opay = $dusN,
vpay = $leaN,
lpay = $dulN,
date = '$dnow'";
cOde = $pzDc
+168
...
<input type="hidden" name="Id" value="<?=rand(1000,9999);?>" />
...
Вы все еще думаете, что "select max+1" - плохой способ для установки первичного ключа?