我知道有很多这样的问题,但任何人都可以帮助我缩小问题的范围吗?
这是我的代码:
ini_set("display_errors", 1);
error_reporting(E_ALL);
$cookies = 'cookies.txt';
$postdatal = array(
'__VIEWSTATE' => '', // need a __VIEWSTATE, even if it's empty
'username' => 'username',
'password' => 'password',
'button1' => 'Sign+in', // need button1
'__VIEWSTATEGENERATOR' => '' // same reason as __VIEWSTATE
);
$ch = curl_init();
curl_setopt_array(
$ch, array(
CURLOPT_URL => 'url',
CURLOPT_RETURNTRANSFER => true, // return the results
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $postdatal, // send the data
CURLOPT_HEADER => true,
CURLOPT_COOKIEJAR => $cookies, // set the cookies
CURLOPT_COOKIEFILE => $cookies
));
$output = curl_exec($ch);
echo $output;
返回的标头有三个Set-Cookie标头。有什么办法可以调试吗?我似乎没有得到任何错误,即使我选择了无效的文件名(cookies.txt是chmod 777空文本文件)。
答案 0 :(得分:1)
我解决了我的问题:我需要添加curl_close()
才能保存Cookie文件。