需要帮助来维护PHP Curl中的会话

时间:2011-03-15 09:29:58

标签: php cookies curl session-cookies

我想从http://www.ps3-themes.com/抓取图片,但每当我直接输入图片网址时,它都无效。它将其重定向到站点的主URL。我正在使用以下代码。

$cookie_file = 'c:/tmp-cookie.txt';
$crl = curl_init();
curl_setopt($crl, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($crl, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($crl, CURLOPT_URL, "http://www.ps3-themes.com/wp-content/uploads/2011/03/11414-FordF150RaptorSVT.jpg");
curl_setopt($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($crl, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($crl);

if (file_exists($cookie_file)) {
print 'Created cookie file ' . $cookie_file;
} else {
print 'Could not create cookie file ' . $cookie_file;
}

我可以说它需要维持会话但不知道该怎么做.-

3 个答案:

答案 0 :(得分:1)

从外观上看,这不是cookie问题,而是引用问题 - 试图从任何地方显示图像,但网站本身将重定向到网站主页。这通常是为了防止热链接,这是带宽烦恼。

您可以通过将cURL HTTP引荐来源设置为适当的URL来解决此问题。

答案 1 :(得分:0)

在发出CURL请求之前尝试使用session_write_close()

答案 2 :(得分:0)

首先,您尝试直接在浏览器中打开图像。它没有打开。可能是图像不存在或需要授权。