siv1987

siv1987
Рейтинг
427
Регистрация
02.04.2009

Покажите запрос.

DELETE p.*, pe.*, pl.* FROM dle_post p LEFT JOIN dle_post_extras pe ON p.id=pe.news_id LEFT JOIN dle_post_log pl ON pl.news_id=p.id WHERE p.date >= '2009.01.01' AND p.date < '2012.01.01'

Это utf-8 который интерпретируется как windows-1251.

colorito:
В этом случае выход придумывается только один - если referer не с нашего сайта ( парсер или яндекс ) - отображать страницу со ссылкой на скачивание.

А что мешает парсеру подделать реферер? Что мешает парсеру подделать абсолютно все заголовки который передает браузер? Реальный выход это капча, если речь идет именно о парсере, надеюсь ТС правильно выразился. Антилич и реферер это немного другая ситуация от прямых ссылок на содержимое но не от парсера.

RewriteRule ^login$ login.php [L,QSA]

Больше реврайтов здесь не нужно.

luckydan:
Почему он тоже не вырезается?

Потому что утверждения не захватываются в результат поиска.

luckydan:
(?=</div>)

"/<div class='also_read'>.*?<\/div>/s"

serjoo:
Если не хотите помогать, пройдите мимо.

Вам же помогли , но вы почему считаете что вам должны чего-то больше. А лично у меня нет никакого желания помогать тем, кто за помощью обращается в духе "напишите мне код замены, я же не просто так решил спросить на форуме".

serjoo:
Конечно не ищу. Просто решил рассказать о своей проблеме.

Для "просто" также есть соответствующий раздел. Выбирайте требуемый раздел в зависимости от того, что вам нужно.

OZE:
проще всего написать php-скрипт

Афтар не знает как. Напишите его за него, он же ведь не просто так спрасил на форуме

serjoo:
Спрашивал бы я здесь, если бы знал как его писать?

Если ищите исполнителя можете найти его в соответствующем разделе.

rereg:
Поставить на сервер http://phantomjs.org/ как то так только.

Не вариант, его рассматривали в первую очередь. Оптимально, конечно, было бы найти сервис который удаленно исполняет javascript.

Пока что остановились на таком костыле, благо алгоритм там самый простой


if(preg_match($regexp, $packed, $out)){
$bits = array_slice($out, 2);
$func = $out[1];

list($p, $a, $c, $k, $e, $d) = $bits;
$p = stripslashes($p);
$k = explode('|', $k);
$d = array();

if(preg_match('/e=function\((.*?)\)\{return (.*?)\}/', $func, $match)){
$vars = explode(',', $match[1]);
$uses = array();
$code = $match[2];

$code = preg_replace('/^([a-z]+)$/', '\$$1', $code);
$code = preg_replace_callback('/(\w+)\.toString\((\w+)\)/', function($m) use($vars, &$uses){
if(! is_numeric($m[2])){
if(! in_array($m[2], $vars)){
$uses[] = $m[2];
}
$m[2] = '$'.$m[2];
}
if(! in_array($m[1], $vars)){
$uses[] = $m[1];
}
$m[1] = '$'.$m[1];
return 'base_convert('.$m[1].', 10, '.$m[2].')';
}, $code);

array_walk($vars, function(&$v){$v = '$'.$v;});
array_walk($uses, function(&$v){$v = '$'.$v;});

$evalCode = '$e = function('.implode(', ', $vars).')';
$evalCode .= count($uses) ? ' use ('.implode(', ', $uses).')' : '';
$evalCode .= '{return '.$code.';};';

if(@eval($evalCode) === false){
return false;
}
}

if(preg_match('/while\(c--\){?(.*?)[;}]/', $func, $match)){
$code = $match[1];
$code = str_replace('||', ' ?: ', $code);
$code = preg_replace('/\b([a-z])\(([a-z])\)/', '\$$1(\$$2)', $code);
$code = preg_replace('/\b([a-z])\[([a-z])\]/', '\$$1[\$$2]', $code);
$code = preg_replace('/([a-z])\.toString\(([a-z])\)/', 'base_convert(\$$1, 10, \$$2)', $code);
$code = preg_replace('/\b(?<!\$)([a-z])\[/', '\$$1[', $code);
$code = preg_replace('/\b(?<!\$)([a-z])$/', '\$$1', $code);

$evalCode = 'while($c--){';
$evalCode .= $code.';}';

if(@eval($evalCode) === false){
return false;
}
}

$k = array(function($e) use ($d){return $d[$e[0]];});
$e = '\\w+';
$c = 1;

while($c--){
if($k[$c]){
$p = preg_replace_callback('/\b'.$e.'\b/', $k[$c], $p);
}
}

return $p;
}
Всего: 6568