[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сокеты POST запрос
qwe
Привет столкнулся с такой проблемой что пост запрос работает но не посылает логин и пароль для авторизации.
Подробнее:
Работаю на локальной машине в денвере чисто тестирую что такое сокеты и HTTP запросы
Есть скрипт А который сокетом соединяется с скриптом Б и посылает ему методом пост данные login и password
Скрипт Б возвращает полученные login и password

Вот код скрипта А:
<?php
$fp = fsockopen ("localhost", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br>\n";
} else {
fputs ($fp, "POST http://localhost/Б.php HTTP/1.0\r\n
Host: http://localhost\r\n
Content-Type: application/x-www-form-urlencoded\r\n
Content-Length: 30\r\n
\r\n

login=12345&password=67890"
);
while (!feof($fp)) {
echo fgets ($fp,128);
}
fclose ($fp);
}
?>


Вот код скрипта Б:
<?php
echo $_POST["login"];
echo $_POST["password"];
?>


Результат работы скрипта А:
HTTP/1.1 200 OK Date: Wed, 06 Jan 2010 01:53:48 GMT Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4 X-Powered-By: PHP/5.2.4 Content-Length: 0 Connection: close Content-Type: text/html; charset=windows-1251


Вопрос: почему скрипт не передает данные методом пост?



Спустя 1 год, 2 месяца, 10 дней, 9 часов, 6 минут, 23 секунды (16.03.2011 - 14:05) Dron19 написал(а):
сам пост запрос нужно обрабатывать функцией urlencode

Спустя 40 секунд (16.03.2011 - 14:05) Dron19 написал(а):
и адрес указан у тебя неверный, надо просто /Б.php

Спустя 1 час, 2 минуты, 59 секунд (16.03.2011 - 15:08) Trianon написал(а):
в поле метода POST не пишут http://localhost
в поле Host: не пишут http://
Размер строки с контентом следует посчитать без ошибок.
там 26 байт, а не 30.

Ну и отклик стоило бы все же построчно показать, а не вытянув в линию.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.