Эта тема на forum.dklab.ru


Lam: Как вытащить сгенерированные ссылки с другого ресурса????? :-(
Здрасте!!!
Скажите пожалуйста, как мне решить данную задачку:
У меня дан следующий скрипт:
<script language=\"JavaScript\">
// <!--
var VarLink = Math.round(Math.random() * 1000000000);
document.write('<iframe src=http://my_host.ru/show?squareid=3005&showtype=1&cat_id=1&tar_id=1&sc=3&bg=FFFFFF&bc=FFFFFF&tc=D5EFFF&r='+VarLink+' frameborder=0 vspace=0 hspace=0 marginwidth=0 marginheight=0 scrolling=no width=100% height=310></iframe>');
// -->
</script>


Вот. Это код в Иффрэйме генерирует следующие ссылки:

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2112&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2126&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2148&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442


uid при каждом сеансе разный! А как мне вытащить эти, уже сгенерированные ссылки в массив $my_array[], чтобы потом сделать случайный выбор из этого массива для переадресации, типа:

srand ((double) microtime() * 1000000);
$r_rand = rand(0,2);
$my_link_1 = $my_array[$r_rand];


<meta http-equiv="Refresh" content="0;URL=<?=$my_link_1?>">


Такое вообще возможно? Большое, при Большое СПАСИБО всем, кто откликнется на мой зов о помощи!!!
Дмитрий Котеров:
В одном предложении - резюмируйте: что Вы хотите?
Lam:
Вытащить сгенерированные ссылки (вышеприведенный кусок скрипта JS) в массив $my_array[].
Надеюсь я понятно обяснил. :-) Спасибо!
Lam:
Хорошо, попробую обрисовать по точнее, но только, мне кажется, одним предложением отделаться не получится.
У себя на сайте поставил типа текстового банера, код этого банера приведен ниже:

<script language="JavaScript">
// <!--
var VarLink = Math.round(Math.random() * 1000000000);
document.write('<iframe src=http://my_host.ru/show?squareid=3005&showtype=1&cat_id=1&tar_id=1&sc=3&bg=FFFFFF&bc=FFFFFF&;tc=D5EFFF&r='+VarLink+' frameborder=0 vspace=0 hspace=0 marginwidth=0 marginheight=0 scrolling=no width=100% height=310></iframe>');
// -->
</script>

, этот код генерит три текстовых ссылки во фрейме:

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2112&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2126&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442

http://my_host.ru/cgi-bin/show.cgi?squareid=7058&requestid=2148&url=http://www.your_host.ru/&showtype=1&uid=d94bf590b7ddeeb77d770e2042b4d442

, причем каждый раз они разные.
Мне нужно следующее: Вот этот самый результат, получаемый вышеприведенным куском скрипта (то бишь вот эти три ссылки) поместить в массив $my_array[]. Чтоб я мог ими управлять, допустим одну поставил в одном месте $my_array[0], другую $my_array[1] поставил бы в другом месте, при этом чтоб я мог давать им свои названия, например так:

<a href=\"".$my_array[0]."\">Мое название ссылки</a>

Да и вообще, чтоб я мог их распихивать по своему усмотрению.
Помогите, пожалуйста!!! Срочно нужно!!!
Или хотя бы поставьте меня на путь истинный, т.к. я и представления не имею, как это можно реализовать на PHP и какими вообще функциями.
Спасибо большое!
SNiP:
PHP скрипты выполняются на стороне сервера.
JavaScript выполняется на стороне клиента.
варианты:
1. Не использовать JavaScript приведенный выше, а вместо этого делать запрос по указанному адресу из PHP скрипта и парсить ответ.
2. Вытаскивать ссылки используя JavaScript и соответсвенно расставлять эти ссылки так же используя JavaScript
Дмитрий Котеров:
этот код генерит три текстовых ссылки
Этот код генерит одну ссылку.
Lam:
Именно три, если бы была одна, то я так бы и сказал.
И все-таки, в итоге я так и не услышал дельного совета! :-(
Lam:
И не полохо было бы еще увидеть хоть приблизительный примерчик!
Извиняюсь за наглость... но...
Евгений Галашин:
http://phpfaq.ru/na_tanke
Lam:
Прочитал, и... К моей проблеме ничего не нашел!!!
Ну неужели вы мне не поможете!!!!!!!!!!!!!!!!!!!!!!!!????????????
Maus:
Lam
2. Вытаскивать ссылки используя JavaScript и соответсвенно расставлять эти ссылки так же используя JavaScript
Вполне дельный совет.
http://phpfaq.ru/na_tanke
Это к тому, что получить эти ссылки до того, как браузер выполнит Javascript, Вы не сможете. То есть если Вы хотите отдать эти ссылки PHP-скрипту, Вам нужно каким-то образом заставить браузер клиента засабмитить Вам эти ссылки.

Резюме: копайте Javascript до получения результата...
Anonymous:
Вполне дельный совет.
Хорошо, тогда как мне реализовать это на JavaScript???
Резюме: копайте Javascript до получения результата...
Ну покажите пример!!! Я так понимаю, что для Вас это особого труда не составит. Я прямо скажу, я не догоняю, поэтому я и обратился в форум!!!!!!!!
Maus:
Гость
Я Javascript практически не знаю. Только примерно представляю его возможности, и этого мне вполне хватает для ориентирования.

Так что, господа модераторы, перенесите, пожалуйста, тему в Javascript: Разное
Дмитрий Котеров:
Именно три, если бы была одна, то я так бы и сказал.
Слушайте, этот код вообще ссылок не генерит. Он генерит IFRAME.
Вам что нужно-то? Прочитать HTML-код из этого IFRAME, разобрать его и выделить ссылки?


Вы нормально выражаться начнете, наконец, или нет? http://ln.com.ua/~openxs/articles/smart-questions-ru.html прочитайте!
Lam:
Ладно, извиняюсь еще раз.
Хорошо, я полностью согласен с тем, что этот код генерит IFRAME, а в нем уже эти URL-ы.
Именно оно и нужно! Эти самые ЧЁРТОВЫ URL-ы, которые находятся после загрузки в IFRAME-e! В инете уже все облазил, но ничего подобного не нашел, в FAQ-ах тоже нет ничего. Поэтому я и обратился к профессионалам, т.е. к Вам.
Lam:
Короче как я понял, то здесь я ответа и помощи не дождусь!!!!!!!!!
Большое спасибо всем!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Дмитрий Котеров:
Пожалуйста.
На http://php.net/file_get_contents сходите (file_get_contents("http://сайт/url/вашего/iframe"), и еще на http://php.net/preg_match.
А если намек не понят, значит, Вы не программист, и Вам тут и правда вряд ли что полезно будет.
Lam:
Я действительно не программист, я только начал учиться. И благодаря... у меня уже, если честно, отпадает все желание.
А file_get_contents не хочет открывать эту ссылку.
Lam:
Всё, вроде разобрался!

<?

$out = implode(' ', file('http://www.myhost.ru/test.php')); // файл с этим IFRAME
preg_match("/<iframe src=(.*)&r='/i", $out, $tmp);
$out = implode(' ', file($tmp[1]));
print $out;
preg_match_all("#<a target=_blank href=\"([^\"]*?)\">#si", $out, $match);

print '<a href=\''.$match[1][0].'\'>Моя ссылка</a><br>';

?>

Спасибо всем!
elinarobin:
Actually, I was also unable to fetch generated links from another resource. There are several platforms where programmers are unable to access properly. you may get the solution from https://mailhelp.net/gmail-support/ to solve their troubles.

Эта тема на forum.dklab.ru