PDA

Просмотр полной версии : Пипл,хелп с курлом.


Велемир
07.08.2009, 22:16
Вечер добрый.Имеется такая темка:




<?php

$url ="www.wservices.ru/reverseip.php";
$ua = "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1";
$req =
"domain_input=google.ee&type=2&submit=Go&ext=&do_global=0";

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_USERAGENT,$ua);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$req);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

$res = curl_exec($ch);

echo $res;

curl_close($ch);


?>



Вроде параметры пральные так почему не возвращается список сайтов ? Не догоняю...

Gaus
07.08.2009, 22:21
Ув. ТС, на этом форуме есть специальный раздел (https://forum.antichat.ru/thread40896.html) для таких вопросов!

Gaus
07.08.2009, 22:22
$url ="www.wservices.ru/reverseip.php";
А где http:// ?

Велемир
07.08.2009, 22:47
Заходит всё равно же.Сорьки.если не туда написал.

D Mak
07.08.2009, 22:57
ну вопервых там обработчик index.php а во вторых чет как то нечисто, щас возиться времени мало

Велемир
07.08.2009, 23:32
Эм... так ведь я инициировал посылку пост запроса на скрипт reverseip.php,после чего должен быть редирект,или я не прав ?Чето я тупить стал ппц...

Gaus
07.08.2009, 23:37
ну попробуй так)
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, "http://wservices.ru/reverseip.php");
curl_setopt($ch,CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1");
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS, "domain_input=google.ee&type=2&submit=Go&ext=&do_global=0");
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$res = curl_exec($ch);
echo $res;
curl_close($ch);

Getozz
07.08.2009, 23:42
а где обратное?

Велемир
08.08.2009, 00:03
Никак...дело в том,что раньше получалось.а сейчас...мимо =(

Велемир
08.08.2009, 00:09
<?php

@set_time_limit(0);

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, "www.wservices.ru/index.php");
curl_setopt($ch,CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1");
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS, "domain_input=google.ee&type=2&submit=Go&ext=&do_global=0");
curl_setopt($ch,CURLOPT_COOKIEFILE,"./cookie");
curl_setopt($ch,CURLOPT_COOKIEJAR,"./cookie");
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$res = curl_exec($ch);
echo $res;


?>



Да и так не работает...

b3
08.08.2009, 03:06
Могу предложить только такой вариант, как я понял там УРЛ к сайту сохраняется в куки. Тогда мы можем получить результат за 2 захода:

<?php
$url = 'google.ee';
###
$ch = curl_init('http://wservices.ru/index.php');
curl_setopt($ch,CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1");
curl_setopt($ch,CURLOPT_REFERER, 'http://wservices.ru/reverseip.php');
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_COOKIEJAR, 'cook');
curl_setopt($ch,CURLOPT_COOKIEFILE, 'cook');
curl_setopt($ch,CURLOPT_POSTFIELDS, "domain_input=$url&type=3&submit=Go&ext=&do_global=0");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
$err = curl_errno($ch);
curl_close($ch);
if($err == 0)
{
$ch = curl_init('http://wservices.ru/reverseip.php');
curl_setopt($ch,CURLOPT_USERAGENT, "Opera/9.64 (Windows NT 5.1; U; ru) Presto/2.1.1");
curl_setopt($ch,CURLOPT_REFERER, 'http://wservices.ru/index.php');
curl_setopt($ch,CURLOPT_COOKIEJAR, 'cook');
curl_setopt($ch,CURLOPT_COOKIEFILE, 'cook');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
if(preg_match_all('#<a href="(.*?)" target="blank">#',$res,$matches))
{
foreach ($matches[1] as $domen)
{
echo $domen.'<br />';
}
}
} else {
echo 'Error';
}

?>

Велемир
08.08.2009, 23:57
Чет я не догнал,почему два захода надо..я в один делал.Чего-то я не понимаю.но спасибо.Проверю завтра