вобщем незнаю кому и как поможет, но я решил свою проблемы в лоб, как говорится через жопу!
я написал вот такой код:
PHP код:
// *** = вашь идентификатор (define('LINKFEED_USER', 'c12438312eef9xxxdfd0500fdc41db5xxxdc9946');)
// www.ru = ваш сайт
$links_url = "/server/?user=***&host=www.ru&uri=".$_SERVER['REQUEST_URI'];
@$so = fsockopen("db.linkfeed.ru", 80, &$errno, &$errstr, 5);
fputs($so,"GET $links_url HTTP/1.0\nHOST: db.linkfeed.ru\n\n");
// читаем все, пока не наступит "конец заголовка" (т.е. начало документа)
// если наступит, то со след. байта начнется документ
while(fgets($so,2048)!="\r\n" && !feof($so));
unset($buf);
// читаем документ в переменную
while(!feof($so)) $buf.=fread($so,2048);
// Готово. В переменной $buf храниться скаченный документ (т.е. файл)
// Максимум можно читать порциями по 64K-1байт
// закрываем сокет
fclose($so);
// выводим все
flush();
$links = $buf; // эту переменную выводим где хотим ссылки поиметь
вариант плохой так как не использует кеширования, вот вариант который проверяет наличие кеша и выводит свежее их него, но тоже тупенько и наскоро написал:
PHP код:
$url_md5 = md5($_SERVER['REQUEST_URI']);
$cachfile = "cache/$url_md5.htm";
$links = "";
if (file_exists(cachfile))
{
// кеш есть, проверяем его актуальность
if((mktime() - filemtime(cachfile)) <= 3600*1) // файл моложе чем сколько то часов
{
$links = file_get_contents(cachfile);
}else{
// *** = вашь идентификатор (define('LINKFEED_USER', 'c12438312eef9xxxdfd0500fdc41db5xxxdc9946');)
// www.ru = ваш сайт
$links_url = "/server/?user=***&host=www.ru&uri=".$_SERVER['REQUEST_URI'];
@$so = fsockopen("db.linkfeed.ru", 80, &$errno, &$errstr, 5);
fputs($so,"GET $links_url HTTP/1.0\nHOST: db.linkfeed.ru\n\n");
// читаем все, пока не наступит "конец заголовка" (т.е. начало документа)
// если наступит, то со след. байта начнется документ
while(fgets($so,2048)!="\r\n" && !feof($so));
unset($buf);
// читаем документ в переменную
while(!feof($so)) $buf.=fread($so,2048);
// Готово. В переменной $buf храниться скаченный документ (т.е. файл)
// Максимум можно читать порциями по 64K-1байт
// закрываем сокет
fclose($so);
// выводим все
flush();
// используем скаченный файл (в переменной) по назначению...
$f=fopen($cachfile,"wb+");
fwrite($f,$buf,strlen($buf));
fclose($f);
$links = $buf; // эту переменную выводим где хотим ссылки поиметь
}
}else{
// *** = вашь идентификатор (define('LINKFEED_USER', 'c12438312eef9xxxdfd0500fdc41db5xxxdc9946');)
// www.ru = ваш сайт
$links_url = "/server/?user=***&host=www.ru&uri=".$_SERVER['REQUEST_URI'];
@$so = fsockopen("db.linkfeed.ru", 80, &$errno, &$errstr, 5);
fputs($so,"GET $links_url HTTP/1.0\nHOST: db.linkfeed.ru\n\n");
// читаем все, пока не наступит "конец заголовка" (т.е. начало документа)
// если наступит, то со след. байта начнется документ
while(fgets($so,2048)!="\r\n" && !feof($so));
unset($buf);
// читаем документ в переменную
while(!feof($so)) $buf.=fread($so,2048);
// Готово. В переменной $buf храниться скаченный документ (т.е. файл)
// Максимум можно читать порциями по 64K-1байт
// закрываем сокет
fclose($so);
// выводим все
flush();
// используем скаченный файл (в переменной) по назначению...
$f=fopen($cachfile,"wb+");
fwrite($f,$buf,strlen($buf));
fclose($f);
$links = $buf; // эту переменную выводим где хотим ссылки поиметь
}