【发布时间】:2010-06-20 17:10:08
【问题描述】:
如何将 POST 数据发送到 PHP 中的 URL(没有表单)?
我将使用它来发送一个变量来完成并提交一个表单。
【问题讨论】:
如何将 POST 数据发送到 PHP 中的 URL(没有表单)?
我将使用它来发送一个变量来完成并提交一个表单。
【问题讨论】:
如果您希望从 PHP 代码本身(不使用 html 表单)将数据发布到 URL,则可以使用 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中。
【讨论】:
CURLOPT_FOLLOWLOCATION、CURLOPT_HEADER 和CURLOPT_RETURNTRANSFER 的作用?我不想复制我不完全理解的代码。
$url 有一个$,因为在php 中这就是您指示变量的方式?你在哪里画线? “......不要得到更多的问题”不是一个人会成功自学的态度,尤其是编程。
可以在 php5 中使用的无 cURL
$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);
【讨论】:
您的问题不是特别清楚,但是如果您想在不使用表单的情况下将 POST 数据发送到 url,您可以使用 fsockopen 或 curl。
【讨论】: