php curl登录问题(空白页)

php curl登录问题(空白页),php,curl,Php,Curl,更新:我现在可以访问主主页,但我没有登录 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com/?cmd=home'); curl_setopt ($ch, CURLOPT_POST, 1); curl_setopt ($ch, CURLOPT_POSTFIELDS, 'emailAddress=jeffanderson@tradermail.info&persist=on&pswd=qweqwe

更新:我现在可以访问主主页,但我没有登录

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com/?cmd=home');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'emailAddress=jeffanderson@tradermail.info&persist=on&pswd=qweqwe&from=/?cmd=home');
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$content = curl_exec ($ch);
curl_close ($ch);

echo $content;
添加curl\u setopt$ch,CURLOPT\u FOLLOWLOCATION,1

如果出现问题,curl\u exec返回false:

$content = curl_exec($ch);
if ($content === FALSE) {
      die(curl_error($ch));
}
return($content);

你需要做两件事。首先,为CURL添加以下两个选项:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_MAXREDIRS, 3);

这将告诉CURL遵循任何重定向。然后,将return更改为echo。Echo会将数据发送到浏览器。那你们都准备好了

毕竟是光荣的回答..你用下面的方式把它们放在一起

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com/?cmd=sb-login&from=/?cmd=home');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'emailAddress=xxx@tradermail.info&persist=on&pswd=xxx&from=/?cmd=home');
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_MAXREDIRS, 10);
$content = curl_exec($ch);
if (FALSE===$content  {
      echo "Follwowing error:".curl_error();
      die(curl_errorno($ch));
}
curl_close ($ch);
return($content);

你不仅仅发布了你的用户名和密码,是吗?是的,但这是一个我不使用的帐户。你可能需要添加curl\u setopt$ch,CURLOPT\u FOLLOWLOCATION,true;如果他们的登录系统使用重定向,请尝试执行curl_setopt$ch,'CURLOPT_HEADER',true,该值将与请求正文一起返回。这应该有助于调试。@Marc B什么也没发生,仍然是空白页。如果不太麻烦的话,您是否可以尝试在swagbucks.com电子邮件中使用我的登录信息创建一个curl脚本:jeffanderson@tradermail.infopass:qweqweHey,您是在函数中运行该代码,还是这就是整个脚本?如果它不在函数中,请将返回值改为echo,您应该可以得到内容。@Marc B让它工作了一点。它加载主页,但我没有登录。知道为什么吗?不知道。可能将用户/通行证提交到错误的位置,或使用错误的字段名。