简单的cURL不起作用

时间:2011-09-20 13:51:43

标签: php forms curl submit

我想使用cURL自动发布表单。 这是我想用cURL发布的表单:

<form action="login/main_login.php" method="post">
<input type="hidden" name="url" value="index.php" />
<input type="submit" value="Submit" />
</form>

我使用此代码:

$ch =curl_init();
curl_setopt($ch, CURLOPT_URL, 'login/main_login.php');
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, "url=index.php");
$data = curl_exec($ch);
curl_close($ch);

但它无法正常工作,甚至没有将我发送到login / main_login.php。 我正在使用wampserver并通过uncomment extension = php_curl.dll编辑了两个php.ini文件。

使用echo curl_error(); 给我以下错误:

curl_error() expects exactly 1 parameter, 0 given inWarning: curl_error() expects exactly 1 parameter, 0 given in C:\wamp\www\website\page.php on line 10

if($data==FALSE)
{
    die("Curl failed: " . curL_error($ch));
}
在curl_close($ ch)前面的

;给我一个带有文字的空白页面:

  

卷曲失败:无法解析主机:登录;主机未找到

2 个答案:

答案 0 :(得分:2)

尝试输入绝对网址而不是相对网址

答案 1 :(得分:2)

如果您想从curl_exec()调用

返回结果,请使用RETURNTRANSFER
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );

并在调用curl_error()

时使用句柄$ ch
$ret_val = curl_error($ch);