С отправкой методом GET всё понятно, достаточно просто вот такого финта:

  1. <?php file_get_contents(‘http://php.name/?s=2&j=1&o=4′); ?>

Собственно, данные POST от данных GET мало чем отличаются. Если говорить очень простым языком, то “get – вот он”, а “post – где-то там”. Но суть не меняется, оба метода – обыкновенные строки с параметрами, разделенными знаком “&”.

Итак, существует несколько методов отправки POST данных на PHP. Один из них – сокеты. Но я очень не люблю сокеты, поэтому покажу как это реализуется с помощью библиотеки cURL.

  1. <?php
  2. $url = ‘http://php.name/'; //УРЛ, которому будут передаваться post данные
  3. /*
  4. Небольшая прелюдия, думаю, тут всё понятно.
  5. */
  6. $ch = curl_init($url);
  7. curl_setopt($ch, CURLOPT_URL,$url);
  8. curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
  9. curl_setopt($ch, CURLOPT_USERAGENT, «Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)»);
  10. curl_setopt($ch, CURLOPT_POST,1); //Вот оно!
  11. /*
  12. И вот, в 3 параметре функции передается строка post данных.
  13. Как видите, она почти ничем не отличается от get — той,
  14. что в адресно строке браузера, только знака вопроса нет в начале
  15. */
  16. curl_setopt($ch, CURLOPT_POSTFIELDS,»s=1&d=2&z=3&q=3″);
  17. $html = curl_exec($ch); //В этой переменной будет содержаться ответ сервера
  18. curl_close($ch);
  19. ?>

Как видите, мы отправили на адрес http://php.name/ некоторые данные, теперь серверный скрипт должен обработать их как:

$_POST['s'] = 1;

$_POST['d'] = 2;

$_POST['z'] = 3;

$_POST['q'] = 3;

Вот вроде и все.

Отправка POST формы посредством PHP

Комментирование закрыто.