Нужно поменять скрипт

RM
На сайте с 21.06.2011
Offline
77
578

В общем есть скрипт:

<?php

$q = str_replace(" ", "%20", $_GET['query']);
urlencode($q);
$site1 = "http://file-share.ru/catalog/search/1/all/?string=$q&aid=6390";
$site2 = "http://kinodivan.com/search/title/$q?aid=6390&t=3";
$f = file_get_contents($site2);
if(preg_match('/<dd class="descript">/s', $f)) {
header("Location: $site2");
} else {
header("Location: $site1");
}
?>

Он при каждом запросе скачивает страницу $site2 и проверят наличие вхождений. Это не есть гут.

Нужно сделать чтоб он при первой проверке определенного запроса(?query=) записывал в файл(или MySQL) - есть вхождение по pre_match или нет. А уже при повторном запросе(то же значение query(он же $q)) уже не лез на $site2, а проверял в файле(ну или базе данных). Т.е. нужно сократить кол-во запросов на $site2, сохраняя результаты проверок в файл. А сам файл будет раз в день очищаться, другим скриптом... Вот так, поможете прикрутить сие фичу к существующему скрипту?

jokerov
На сайте с 18.07.2008
Offline
102
#1


<?php
$q = str_replace(" ", "%20", $_GET['query']);
urlencode($q);
$site1 = "http://file-share.ru/catalog/search/1/all/?string=$q&aid=6390";
$site2 = "http://kinodivan.com/search/title/$q?aid=6390&t=3";
//begin фича
$file = md5($_GET['query']);
if(file_exists($file)){
$f = file_get_contents($file);
} else {
$f = file_get_contents($site2);
file_put_contents($file, $f);
}
//end фича
if(preg_match('/<dd class="descript">/s', $f)) {
header("Location: $site2");
} else {
header("Location: $site1");
}
?>

Раз в день удаляйте созданные файлы вашим "другим скриптом".

RM
На сайте с 21.06.2011
Offline
77
#2
jokerov:

<?php
$q = str_replace(" ", "%20", $_GET['query']);
urlencode($q);
$site1 = "http://file-share.ru/catalog/search/1/all/?string=$q&aid=6390";
$site2 = "http://kinodivan.com/search/title/$q?aid=6390&t=3";
//begin фича
$file = md5($_GET['query']);
if(file_exists($file)){
$f = file_get_contents($file);
} else {
$f = file_get_contents($site2);
file_put_contents($file, $f);
}
//end фича
if(preg_match('/<dd class="descript">/s', $f)) {
header("Location: $site2");
} else {
header("Location: $site1");
}
?>


Раз в день удаляйте созданные файлы вашим "другим скриптом".

Непонял, а что делает сие скрипт? Он ведь только задает директиву file которая содержит md5 хеш запроса... не пойму...

RoMaN444Ik добавил 03.07.2011 в 14:23

Все. Спасибо за идею, доработал. Теперь все ОК

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий