Регер акков pochta.ru
Привет всем...
писал вот регер акков для почты.ру
но возникла трабла... и не пойму в чем дело...
каптча качается.. потом вводишь каптчу..
пост запрос шлешь - и в ответ - неверно введена каптча...
Заголовки смотрел в LiveHTTP Headers, все совпадает.. а почему то не пашет...
Кто подскажет в чем трабла?
Вот основная часть скрипта
PHP код:
<?php
$pass="123123";/*пасс */
/*Get запросы */
function getzapros($host, $path)
{
$res="";
$sock=fsockopen($host, 80, $errno, $errstr, 30);
if(!$sock){
echo $errstr($errno);
}else{
$headers = "GET $path HTTP/1.1\r\n";
$headers .="Host: $host\r\n";
$headers .="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
$headers .="Accept-Language: ru,ru-RU;q=0.9,en;q=0.8\r\n";
$headers .="Connection: Close\r\n\r\n";
}
fwrite($sock, $headers);
while(!feof($sock)){
$res .=fgets($sock, 1024);
}
fclose($sock);
return $res;
}
/* POST запрос */
function postzapros($host, $script, $cont){
$respons="";
$postsock=fsockopen($host, 80, $errno, $errstr, 30);
if(!$postsock){
echo $errstr($errno);
}else{
$head ="POST $script HTTP/1.1\r\n";
$head .="Host: $host\r\n";
$head .="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14\r\n";
$head .="Accept-Language: ru,ru-RU;q=0.9,en;q=0.8\r\n";
$head .="Connecion: Close\r\n";
$head .="Referer: http://www.pochta.ru/register/?$id\r\n";
$head .="Content-Type: application/x-www-form-urlencoded\r\n";
$head .="Content-Length: ".strlen($cont)."\r\n";
$head .="\r\n$cont\r\n";
}
fwrite($postsock, $head);
while(!feof($postsock)){
$respons .=fgets($postsock, 1024);
}
fclose($postsock);
return $respons;
}
$host="www.pochta.ru";
$path="/register/";
$get=getzapros($host, $path); //запрашиваем страницу реги
preg_match("%Location: (/register/\S+)%i", $get, $math); //выдираем заголовок Location
$id=substr($math[1], 11); // Id шник
echo $id;
$post=getzapros($host, $math[1]);//запрашиваем страницу из заголовка Location
//echo $post;
//preg_match("/register\/show_captcha\/\?id=[0-9a-z]{32}&captcha_id=[0-9a-z]{22,}/", $post, $captha);
preg_match("/captcha_id=[0-9a-z]{22,}/", $post, $capthaid);// Id Каптчи
$caphaid=$capthaid[0];
echo <<<EOG
<a href="http://localhost/mypo4tareger.php"> на главную</a><br>
<form action="mypo4tareger.php" method="post">
<img src="http://www.pochta.ru/register/show_captcha/?$id&$caphaid">
<input type="text" name="capha">
<input type="submit" name="click">
</form>
EOG;
if($_POST['click']){
$cont="$id&from_promo=0&rid=&lng=ru&newmail=&second_name=&first_name=&sure_name=®_login=eblan2008&domain=pochta.ru&alt_captcha_id=&alt_captcha=&domain_pass=&pass1=$pass&pass2=$pass&$caphaid&rnd_img_str={$_POST['capha']}&bth_additional=&bth_finish=1";
echo $cont."<br>";
echo $caphaid;
echo postzapros("www.pochta.ru", "/register/submit/", $cont);
}
?>
|