Данные POST для URL-адреса в PHP

Как я могу отправить данные POST в URL-адрес в PHP (без формы)?

Я собираюсь использовать его для отправки переменной для заполнения и отправки формы.

Ответ 1

Если вы хотите отправить данные в URL-адрес из самого PHP-кода (без использования html-формы), это можно сделать с помощью curl. Он будет выглядеть следующим образом:

$url = 'http://www.someurl.com';
$myvars = 'myvar1=' . $myvar1 . '&myvar2=' . $myvar2;

$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_POST, 1);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $myvars);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch, CURLOPT_HEADER, 0);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec( $ch );

Это отправит post-переменные на указанный URL-адрес, и то, что возвращает страница, будет в $response.

Ответ 2

cURL-less, вы можете использовать в php5

$url = 'URL';
$data = array('field1' => 'value', 'field2' => 'value');
$options = array(
        'http' => array(
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'content' => http_build_query($data),
    )
);

$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);

Ответ 3

Ваш вопрос не особенно ясен, но если вы хотите отправить данные POST на URL-адрес без использования формы, вы можете использовать либо fsockopen, либо curl.

Здесь довольно хорошее прохождение как,