PHP使用cookie登录

时间:2012-02-02 05:01:08

标签: php http cookies curl

我正在尝试通过curl登录页面。成功登录会将您重定向到实际网站,并在那里看到内容。

基本上,有2个网址,第一个网址是发布登录凭据,另一个网址是登录后内容可见的位置。

我设法向登录网址发送了一个帖子请求,它也成功创建了一个有效的cookie,但我无法弄清楚如何使用cookie从第二个网址看到该页面的内容。

我正在尝试使用这两个选项执行正常的curl请求(代码中没有POSTFIELDS)来检索第2页的内容但是如果你查看它的源代码,它只显示html代码重定向到登录网址。

curl_setopt($ch1, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch1, CURLOPT_COOKIEFILE, 'cookie.txt');

关于我可能做错的任何想法?

1 个答案:

答案 0 :(得分:0)

尝试向CURL请求添加更多参数:

$ch = curl_init();  
curl_setopt($ch, CURLOPT_URL, $url);  
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)');
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$string = curl_exec ($ch);  
curl_close ($ch);