POST数据到PHP中的URL
如何发送POST数据到PHP中的URL(没有表单)?
我将用它来发送一个variables来完成并提交一个表单。
如果你想从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 );
这会将postvariables发送到指定的url,页面返回的内容将在$ response中。
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);
你的问题不是特别清楚,但是如果你想发送POST数据到一个url而不使用表单,你可以使用fsockopen或者curl。
这是两个相当不错的演练