Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   скрипт php sec question rambler (https://forum.antichat.xyz/showthread.php?t=91599)

binarnik 13.11.2008 00:49

скрипт php sec question rambler
 
укажите плз ошибку
пишу скрипт для автоматического перебирания ответов на секретный вопрос...
застрял на моменте отсылки ответа, что-то идет не так, ответ правильный, но скрипт возвращает опять ту же форму для ввода:

PHP код:

<?php
$match 
= array();
$target "http://id.rambler.ru/script/reminder.cgi";
        
$postvars "step=asklogin&login=menta955";  
        
$c curl_init($target);
        
curl_setopt($cCURLOPT_VERBOSE1); 
        
curl_setopt($cCURLOPT_RETURNTRANSFER1);
        
curl_setopt($cCURLOPT_REFERER"http://id.rambler.ru/");
        
curl_setopt($cCURLOPT_USERAGENT'Opera/9.27 (Windows NT 5.1; U; en)');
        
curl_setopt($cCURLOPT_POST1); // set POST method  
        
curl_setopt($cCURLOPT_POSTFIELDS$postvars);
        
$page=curl_exec($c);
        
preg_match_all("/captcha\/\w+.jpg/"$page$match);
        
$match[0][0] = str_replace("captcha/"""$match[0][0]);
        
$number str_replace(".jpg"""$match[0][0]);
        
curl_close($c);
        
$page str_replace("/captcha/".$match[0][0], "http://id.rambler.ru/captcha/".$match[0][0], $page);
        
$form2 =  "<img src='http://id.rambler.ru/captcha/".$match[0][0]."' alt='' border='0' vspace='2'>
        <form id='form1' name='form2' method='post' action=''>
        <p>Vvedite tekst s kartinki</p>
          <p>
            <label>
            <input type='text' name='captcha' id='2' />
            </label>
            </p>
          <p>
            <label>
            <input type='hidden' name='number' value='"
.$number."'>
            <input type='submit' name='button' id='button' value='Pognali' />
            </label>
        </p>
        </form>"
;
//echo($page);
if(isset($_POST['captcha']) && !empty($_POST['captcha'])) {
        
$postvars "step=askanswer&login=menta955&domain=rambler.ru&question=Девичья фамилия матери&number=
        "
.$_POST['number']."&hash=".$_POST['captcha']."&answer=menta955";
        
$c curl_init($target);
        
curl_setopt($cCURLOPT_VERBOSE1); 
        
curl_setopt($cCURLOPT_RETURNTRANSFER1);
        
curl_setopt($cCURLOPT_REFERER"http://id.rambler.ru/script/reminder.cgi");
        
curl_setopt($cCURLOPT_USERAGENT'Opera/9.27 (Windows NT 5.1; U; en)');
        
curl_setopt($cCURLOPT_POST1); // set POST method  
        
curl_setopt($cCURLOPT_POSTFIELDS$postvars);
        
$page2=curl_exec($c);
        echo(
$page2);
} else {
    echo(
$form2);
}

?>


Doom123 13.11.2008 01:57

Проверь заголовки ответа может там кукисы идут ид сессии и т.п =)

WMCASH 18.11.2008 05:50

ТОже мучаюсь, помоему там ссесия вкл. и ее фиг знает как обойти. Вроде все правельно сделал.

1) вводим данные на первом шаге.
2) парсим number, сосавляем curl и все данные отправляем после ввода капчи, капчу выводим заранее с формочкой.

Вот сижу мучаюсь, может кто поможет?

.:nbd:. 18.11.2008 10:14

Во первых передавай куки, во вторых
PHP код:

$postvars "step=askanswer&login=menta955&domain=rambler.ru&question=Девичья фамилия матери&number= 
        "
.$_POST['number']."&hash=".$_POST['captcha']."&answer=menta955"

замени на:
PHP код:

$postvars "step=askanswer&login=menta955&domain=rambler.ru&question=".urlencode('Девичья фамилия матери')."&number= 
        "
.$_POST['number']."&hash=".$_POST['captcha']."&answer=menta955"



Время: 14:19