2011-02-03 4 views
0

У меня есть форма с ссылкой на хост и URL, на который я могу отправить сообщение. Метод отлично работает в Интернете, я хочу, чтобы использовать PHP для ввода данных автоматически, как я сделать это без завиткаhttp сообщение в php без curl using username, password, param1, param2 (строковый массив)?

он будет принят, как этот (имя пользователя, пароль, пример, example2)

Пример 2 представляет собой массив строк данных с нужными именами параметров

если нет ничего прошло на все ошибки выскажет «ошибка входа»

если Пример 2 пуст он будет отображать «Корневой элемент отсутствует.»

+0

Если ничего не прошло, то при ошибке укажет «Ошибка входа» – Technupe

ответ

4

Смотрите также: How to post data in PHP using file_get_contents?

В принципе вы можете использовать file_get_contents() и stream_context_create() для выдачи запроса POST. В вашем случае:

$post = http_build_query(array(
    "username" => "user", 
    "password" => "pw", 
    "example" => "...", 
)); 

$context = stream_context_create(array("http"=>array(
    "method" => "POST", 
    "header" => "Content-Type: application/x-www-form-urlencoded\r\n" . 
       "Content-Length: ". strlen($post) . "\r\n", 
    "content" => $post, 
))); 

$page = file_get_contents("http://example.com/login", false, $context); 
+0

Спасибо, парень! Оценивается – ianaz

+0

Когда я пытаюсь это просто возвращает обратно исходный php вместо возврата на страницу :( – Banning

1

Просто откройте сокет к порту 80, отправить заголовки (вы можете использовать livehttp заголовки, если вы хотите, чтобы обмануть создание заголовков, просто смотреть, как размещение в браузере и скопируйте его). Затем отправьте данные после заголовков.

Смежные вопросы