PHP:
<?php
@ob_start();
@ob_implicit_flush(0);
@error_reporting(E_ALL ^ E_WARNING ^ E_NOTICE);
@ini_set('display_errors', false);
@ini_set('html_errors', false);
@ini_set('error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE);
define('DATALIFEENGINE', true);
define('ROOT_DIR', dirname(__FILE__).'/../..');
define('ENGINE_DIR', ROOT_DIR . '/engine');
@include (ENGINE_DIR.'/data/config.php');
function UTF8toCP1251($str)
{
static $table = array("\xD0\x81" => "\xA8", // Ё
"\xD1\x91" => "\xB8", // ё
// украинские символы
"\xD0\x8E" => "\xA1", // Ў (У)
"\xD1\x9E" => "\xA2", // ў (у)
"\xD0\x84" => "\xAA", // Є (Э)
"\xD0\x87" => "\xAF", // Ї (I..)
"\xD0\x86" => "\xB2", // I (I)
"\xD1\x96" => "\xB3", // i (i)
"\xD1\x94" => "\xBA", // є (э)
"\xD1\x97" => "\xBF", // ї (i..)
// чувашские символы
"\xD3\x90" => "\x8C", // Ӑ (А)
"\xD3\x96" => "\x8D", // Ӗ (Е)
"\xD2\xAA" => "\x8E", // Ҫ (С)
"\xD3\xB2" => "\x8F", // Ӳ (У)
"\xD3\x91" => "\x9C", // ӑ (а)
"\xD3\x97" => "\x9D", // ӗ (е)
"\xD2\xAB" => "\x9E", // ҫ (с)
"\xD3\xB3" => "\x9F", // ӳ (у)
);
return preg_replace('#([\xD0-\xD1])([\x80-\xBF])#se', 'isset($table["$0"]) ? $table["$0"] :
chr(ord("$2")+("$1" == "\xD0" ? 0x30 : 0x70))
', $str
);
}
function search_torrent($query) {
$ch = curl_init(); // инициализируем сеанс
$title = trim(strip_tags($_REQUEST['title'])); // получаем пост
curl_setopt($ch, CURLOPT_URL, 'http://rutor.info/search/' . $title); //указываем адрес страницы
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera 10.00'); //представляемся серверу браузером Opera версии 10.00
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //ответ сервера сохранять в переменную, а не на экран
$res = curl_exec($ch); //выполняем запрос, результат в переменную $res
if(!$res) {
//для обработки ошибок curl
$error = curl_error($curl).'('.curl_errno($curl).')';
} else {
$result = $res;
//$result = UTF8toCP1251($result);
}
$find2 = "";
$p1 = strpos($result, "<table width=\"100%\"><tr class=\"backgr\">");
$p2 = strpos($result, "</table><b>Страницы");
$result = substr($result, $p1, $p2 - $p1);
/* if title has a year
* @param (string) $tpost
* @return (string) year
*/
function ifYear( $tpost ) {
if ( preg_match( "/([1-2][0-9]{3})/", $tpost, $yy ) ) {
return $yy[1];
} else {
return FALSE;
}
}
preg_match_all('#<a href="magnet(.*?)"><img src="http://s.rutor.info/i/m.png" alt="M" /></a>.*?<a href="/torrent/(.[0-9]*)/.*?">(.*?)</a></td>.*?\n.*?<td align="right">(.*?)</td><td align="center"><span class="green"><img src="http://s.rutor.info/t/arrowup.gif" alt="S" /> (.*?)</span> <img src="http://s.rutor.info/t/arrowdown.gif" alt="L" /><span class="red"> (.*?)</span></td></tr>#is', $result, $find);
$count = intval(count($find['1']));
$i = -1;
$find2 = "";
$unsh = 0;
$year = ifYear( $title );
if ($year!==FALSE) {
foreach ($find['4'] as $tor) {
if ($unsh==5) break;
if ( preg_match( "/$year/", $tor ) ) {
$key = array_search( $tor, $find['4'] );
eval(gzinflate(base64_decode('Dc63sptKAADQz/H1UIggQIzHBTkvIJAIzRsBS44i79c/d6c8cP90PyWqh6L7rPAn/SyQuf+Xw2zM4c8vIVO0dgY6z0s8jZ02YWqHsacvyGuibzX9MqqTV4uPist3Y50R13IEgYhtOSPuSm0ly86b4c+qvFN0cr/XE8lHwW7roL1dFaLIZBsObCBedZbcooc3uE3z8O70jhVl7sbx87qCLAWveOV8eJIT/xxVvhEkKfCJk/9O7OM6JUsAXbfKOkug1D9Odl2v4eFcjFzOIjiJ6hUjz2+oVMOzNy/rX57hwuLA62QLZco9vgHGH2vL99Fbu9HanTXzV27K2ETlDg2K79Pesw4b1Ng/GJD62+scYI5/41YB78sz15ptaPB4NyGRM/N9KHb1jAjKGrNuKELJUZRnwJDFKGIlp40dGUAuX+nVNAujPJNKAfJ+3k5k4SNOLCpXD/XkmwBRfDk9IdXScJzGsT0SLEUUqo5logzG/Kqi20SdM+LWatcY9+ym8/muccJO/jnzTPh+tJcs5MaHyYhFfH+U6My0Iw5VKdCYfnnvNmJB2PmIywOtp7JoM9kCPFwKcDPKZZy6xFHDqqIppKwqTjMe2papFZbkboglHrMElPLV6w0qQWh9kvNxFjvEv4sYsbCKiS5KeH0HaqNRLLbJSTR6uUBgle48abL1xO5uN8EhUYw63AZvtRVbCtmPcrUM2pyRUAdKrmHFNJ2vuIfL1/yRZLuYdDyb3dzLmpBqCmmrphZ/WFTp9M7Fsi3ur2uon1CAMWqADmwGNzuyx83K3E62fGPBMfjLobL8Zuu0t9WV4fXWjXv7q/RlMaid+byChhvONtMjqCgzvjkiZs9YfqIjH+tvlOasewnmSwwralbKNfc+rhi4ak2zh8FWGR9uFCBxdsA0pHU1Eyg4o+J9okb0d3JgV9CSNAxrSRZttEtoTnN6yMFoEWXfqngwhTywKS3UzgUU7/Zefj5PT1SiREbO8i9j0GwFcRVb14ALK22pL5DbLtxGTkaP78t3yusqNDO54ukzkYg6YyGiMhVPImYlzUw6g/51V58j5U8Kt78N7Ggh6ebXdB0geFT1AE11a2FGCJ+34oVWKPC0wgT3EbR2eq8OvSfraJRL2Fs6w/G1vvtMM4Y3RrBf9HQV0chY0oxXz7kTSeNb8aboVmneQ0TkIkzl2FXmEesnJx6VjZr4uiXtz84tnVFRHGcxdy8anPYr6P0raOEVJ5CXNlzXegNT0XMRl003sDvKsWkMi+LGYrdi32/H37+/fv/+/ed/')));
$unsh++;
}
}
}
while ($i < $count - 1) {
if($is==10) break;
$i++;
$find['1'][$i] = str_replace("http://s.rutor.info/i/m.png", "/magnet.png", $find['1'][$i]);
$find['1'][$i] = str_replace("magnet:", "magnet:", $find['1'][$i]);
$is = $i + 1;
eval(gzinflate(base64_decode('DdHHkqJAAADQz5mZ8kAOXVt7aIIkJQvCZavJTRIFEfj6nS94h1euqP+uDzxWPVrK7wzNJc/+K8r8UZTfX0q+mstgQwgV7ziNTNgkj7PKV/cmkAfjatCVt51VEHBTu4OCYipCQx0ieJLxor0QWEsEg3IZCDMQeHUkQFfPrXmiRQP5pcscIw7FhyxO8mFxOn0pNjIsgp6OXNand2PzJkViszVTssWGbDzQApDcYF1Snsh9G6Q4BsHBpVjTwIIdTF9wozHAVa0U+DAOj9OjrfVdx7lEKczbkiD65UrkMGe1bxHk+vL6MsG9MDVNn7ucRJlDc+TaX1+kMX2WuoOOukXrYrw9pUrTgoEkJX+4Re+VqB6iM6DJBVrnxjDf3utxJuTa5qf8tjKLsDkEb5za+epPgXazHnwFUc4CVWYHrhqPrO7GguyYqfJ0N5HeRRQlTyuedmsmX7fYZlO82uPuRcnFyYMbahiOlDgyh0aKyurSMO9w381YFZg4u4pic6OBCYqeDQL2JUWwuY0bnda+yPK+29l2SUmQPex73YyLOvYKppVAae3jrJLPGerwM29FnzLhhRAA7j/kkoxprevIQZ8R1FxzZ5P+uFPhlDNh2aOkdITelzlNDuMB01huSzBSRZyx6lIgijsE0U32ziZUwaerF+z5bL6YuUG65eyaRGy9nFO6Gun4fIdP1B7IL0x8c4RsTzH1m8VeG2mrUoStPvcLwnVfJ2IVwCH+/fr5+fnzHw==')));
eval(gzinflate(base64_decode('DdBHkqpAAADQ44wWCyRjTc2CJg1IEiRufiE0QdoGSSKn/1PvBg+uOTrUe4srlM/wcM8nyLP/Slj0JTx8gUIrEWNKkqTUWHCoBNweKXc6C+94+4QwMO44q9m8SeO6I72RgaUcdiFNUYgyp0abxf7dxNUm9IZBnNzMsvhNrJxXPjQYXMaCwekUR317DTrvigmQP2Q0K1Xjyns1II/JbTXnXc4r8R9O2yepn05X/ABW4m/B7TbpA6gcmJJ+yd4jiS3XYkubmntPNBIXNdTI4Ffnn5scv2Een4ZLMhiG0gL3dcsIWgg+2ijI6qKj4i5rL3q7AWF2poedwVqmRQ5BK+Eom9tC176cRbwCTOjxk9FjLVX68hqM22e/xpOpNNowam64dwsnzRMXYZU9B0NbKSFgxba1LEQpWLOL8EWcszlqoJeId9eo19FzfdGSQeEK5BIs9tMbedlDvunuydlTOy9CmVBxjG/nZsf+MpfR5VGbvHxS2wfU606GiJVPJWcQtioyY74nKhLIdA0bmqBXp/+rAupSFbh2mAnZTRGSAk/TBONV75+fr+Px+P0f')));
$find2 .= <<<HTML
<tr>
<th>{$find['3'][$i]}</th>
<th>{$find['4'][$i]}</th>
<th>{$find['5'][$i]}</th>
<th>{$find['6'][$i]}</th>
<th><a href="{$find['7'][$i]}" target="_blank"><img title="Скачать без регистрации торрент" src="/images/download.png" alt="Скачать без регистрации торрент "></a> </th>
</tr>
HTML;
}
if (!$find2 or $find2 == "") {
$finds = "<br><br><p style=\"text-align: center;\"><span style=\"font-size: medium;\"><strong><span style=\"color: #ff0000;\">Внимание:</span></strong> Не удалось отобразить раздачу! Обновите страницу!</span></p><br><br>";
} else {
$finds = <<<HTML
<table style="width:100%;" class="restable">
<thead>
<tr>
<th style="width:500px;">Название торрент раздачи<span> </span></th>
<th style="width:40px;">Размер <span> </span></th>
<th style="width:50px;">Сиды <span> </span></th>
<th style="width:50px;">Пиры <span> </span></th>
<th style="width:50px;">Скачать <span> </span></th>
</tr>
</thead>
<tbody>
{$find2}
</tbody>
</table>
HTML;
}
return ($finds);
}
@header("Content-type: text/html; charset=" . $config['charset']);
echo search_torrent($title);
?>
Последнее редактирование: