1

我正在开发一个创建第三方网站的项目,我们在该网站上显示源自原始网站的验证码图像,并且用户必须在输入表单中的验证码图像上写入文本。然后我们使用 cURL 通过 POST 方法发送表单。但它不适用于验证码。我在网上搜索了很多,我浏览过的帖子中有 80% 都说这是不可能的,而我发现其他一些帖子说他们已经成功但没有描述。我很想知道这是否可能。如果可能的话,你能帮我做吗?

我们不需要 captcha-break 或类似的东西。capthca 的输入由用户手动输入。我们只需要使用 cURL 将其发送到原始站点。

提前致谢 :-)

这是代码,我现在尝试:

$ch = curl_init();
$timeout = 5;
$name=$_POST['name'];
$captcha=$_POST['code'];
$data_pass = "user=".$name."&code=".$captcha;

curl_setopt($ch,CURLOPT_URL,$url);  
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_pass);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);

curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_COOKIEJAR, "/cookiefile.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "/cookiefile.txt");


$ret = curl_exec($ch);
curl_close($ch);
4

1 回答 1

0

您可以尝试将验证码图像卷曲到 php 文件中。

添加这两行以帮助显示验证码图像。 ob_clean();//清理输出缓冲区,使图像不包含错误

header("Content-type:image/png");

稍后使用html“ img src”标签在用户输入表单中显示验证码。希望能帮助到你。

于 2014-01-13T09:54:12.000 回答