За последние 24 часа нас посетили 21918 программистов и 1720 роботов. Сейчас ищут 843 программиста ...

Вопрос по отправке POST

Тема в разделе "Прочие вопросы по PHP", создана пользователем xenoll, 12 янв 2010.

  1. xenoll

    xenoll Активный пользователь

    С нами с:
    12 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Доброго времени суток!

    Написал скрипт по отправке данных на сервис форумов, в нем имеется 3 запроса, первые два отлично отправляются, но третий никак не хочет отправляться, скрипт выполняется без ошибок, куда копать я не предстваляю, вот кусок исходного кода 3-го запроса. Хотелось бы узнать в чем ошибка.
    В этом деле я еще новичек, сильно не ругайте.
    Заранее благодарен.

    Код (Text):
    1.  
    2. <?php
    3. function http_post_req($host, $page, $vars, $cooks, $referer = '') {
    4.     if ( !is_array($cooks) ) $cooks = array();
    5.     $var = "";
    6.     if ( strlen($vars)>0 ) $var = $vars;
    7.     $cookie = "";
    8.     foreach ( $cooks as $key => $value )
    9.         $cookie .= RawUrlEncode($key)."=".RawUrlEncode($value).";";
    10.     $req  = "POST http://$host/$page HTTP/1.0\r\n";
    11.     $req .= "Host: $host\r\n";
    12.     $req .= "Accept: text/html, */*\r\n";
    13.     $req .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.10 [en]\r\n";
    14.     if ( !empty($cookie) ) $req .= "Cookie: $cookie\r\n";
    15.     $req .= "Referer: $referer\r\n";
    16.     if ( strlen($cooks)>0 ) $req .= "Cookie: $cooks\r\n";
    17.     $req .= "Content-Type: application/x-www-form-urlencoded\r\n";
    18.     $req .= "Content-Length: ".strlen( $var )."\r\n";
    19.     $req .= "\r\n";
    20.     $req .= $var;
    21.     return $req;
    22. }
    23.  
    24. $passreg ="пароль";
    25. $html_up = "";
    26. $html_down = "";
    27. $uref = 'http://'.$login.'.домен.ru/?33';;
    28.  
    29. $host = ''.$login.'.домен.ru';
    30. $port = getservbyname('www', 'tcp');
    31. $addr = gethostbyname($host);
    32. $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    33. $res = socket_connect($socket, $addr, $port);
    34. $request = http_post_req($host, '', "work=33&predosmotr=0&gb=1&type=2&admmail=&new_up=1&protektion=0&sizeavrmax=4&gr_edit=1&gr_bui=0&gr_mat=0&gr_sm=0&gr_gif=0&gr_imgpod=1&gr_invis=1&gr_avr_send=1&tem_on_page=20&gde_form=3&lang=0&timezone=10800&p1=on&p2=on&p3=on&p5=on&p6=on&p7=on&p8=on&d0=http%3A%2F%2Fjpe.ru%2Fgif%2F1&d1=%23C6D8F6&d2=%23DEE7F3&d3=%23C6D8F6&d4=%23F4F7FB&d5=%23DEE7F3&d6=%23687FC1&d7=%23FFFFFF&d8=%23FFFFFF&d9=%23A2B3DE&d11=&d12=&d13=&d14=&d15=&d16=&d17=&d18=&d19=&d20=&smline=&htmlnews=&lsmess=&lgpak0=&lgpak1=&html_up=$html_up&html_down=$html_down&clearlang=on&adminpass=$passreg", '', "$uref");
    35. socket_write($socket, $request, strlen($request));
    36. socket_close($socket);