如何发送POST变量?

问题描述:

这可能是一个愚蠢的问题,但我需要问它,因为我从来没有这样做过。如何发送POST变量?

有一个网站,可以让我们检查订单的状态。我们一直需要去这个网站手动完成这项工作,而且非常耗时。我想自动执行此任务。

该网站只接受POST变量。有没有一种方法可以将数据发送到此网站,或者这是不可能的?

是的,你可以使用PHP CURL来做到这一点。 http://uk.php.net/manual/en/book.curl.php

+0

谢谢利亚姆。 CURL库中是否有特定的模块需要关注? – Jim 2010-09-23 21:21:43

+0

利亚姆,我应该提到我们要访问的这个数据库是使用SSL。 – Jim 2010-09-23 21:24:25

+0

嗨,首先,SSL不是问题,因为在创建CURL对象时可以考虑这一点。至于模块:你使用curl_init()初始化一个cURL调用,然后使用curl_setopt或curl_setopt_array设置你的参数,然后使用curl_exec执行 – 2010-09-23 22:13:18

可以使用CURL libraries in PHP

$postvars = array('name' => 'value'); 
$url = 'http://example.com'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_exec($ch); 
curl_close($ch); 
+0

感谢代码Slokun。我是否需要为cURL重新编译PHP,或者它是否可以直接使用? – Jim 2010-09-23 21:28:06

+0

@Jim假设你已经将cURL库编译为PHP,那么他们将开箱即用。运行'phpinfo()'并在那里搜索'curl'。如果列出它,那么它编译得很好。否则,您需要重新编译或找到添加它们的方法。有没有它的POST方法(完成它们),但它们更复杂。 – Tarka 2010-09-24 16:38:42