Код (Text): $zapros =<<<EQQ POST import.php HTTP/1.0\r\n Referer: http://test.ru\r\n Content-Type: text/html\r\n Charset=utf-8\r\n Content-Length: 1784 Host: test.ru\r\n Connection: close\r\n User-Agent: PHPScript\r\n \r\n password=111&login=sys EQQ; При отправке сркетом пишет Bad Request?
Да. Кроме того, заголовок charset в данном случае избыточен, если только вы его не хотите использовать в скрипте.
Код (Text): <?php $res=""; $str="password=111&login=sys"; $zapros =' POST /import.php HTTP/1.0\r\n Referer: http://test.ru\r\n Content-Type: application/x-www-form-urlencoded\r\n Content-Length: '.strlen($str).'\r\n Host: test.ru\r\n Connection: close\r\n User-Agent: PHPScript\r\n \r\n '.$str; $fp = fsockopen('test.ru', 80, $errno, $errstr, 30); fwrite($fp, $zapros); while (!feof($fp)) { $res .= fgets($fp, 128); } print_r($res); fclose($fp); ?> Че гото скрипт виснет? Содержимое файла import.php Код (Text): echo $_POST['password']
Код (Text): Referer это кстати. Ссылочка ваша не очень. curl не интересует. Вобше мне кажется что запрос ушел нормально, потому как ошибок нет а вот ответ не приходит. Вывод или не тот адресс или ответ тоже надо формировать с header?
Вобшем скрипт запускающей пост запрос, доделал. Теперь осталась разобраться с клиентом потому как вместо вывода пост массива он присылает ответ HTTP/1.1 200 OK ? Получается в клиенти не льзя написать echo $_POST['password'] а надо тоже формировать заголовки с Content-Type: ???
ага Вот взял пример Код (Text): <?php $data = "login=login&password=password&PHPSESSID=123abc"; $packet="POST /import.php HTTP/1.0\r\n"; $packet.="Host: test.ru\r\n"; $packet.="Content-Length: ".strlen($data)."\r\n"; $packet.="Referer: http://test.ru\r\n"; $packet.="Content-Type: application/x-www-form-urlencoded\r\n"; $packet.="Connection: keep-alive\r\n"; $packet.="Cache-Control: no-cache\r\n\r\n"; $packet.=$data."\r\n\r\n"; $ock=fsockopen('test.ru', 80, $errno, $errstr, 30); fwrite($ock,$packet); $html=''; if (!feof($ock)) { $html.=fgets($ock); } echo $html; fclose($ock); ?> Подскажите что из-себя должен представлять клиент возвращающий данные? Он тоже должен открывать соединение или просто достаточно echo $data; ???
О точно забыл про цикл! Спасибо, теперь вылетает по полной весь список Но мне не надо заголовки, как их можно убрать?
Ок все понятно и на самом деле давно сделано с помощью file_get_contents . Однако за терпение [vs] респект