php 的 curl 传送 cookie
两种方式:
一种是自动:
代码如下:
curl_setopt(
$curlHandle
, CURLOPT_COOKIEJAR, 'cookie.txt ');
//
保存
curl_setopt(
$curlHandle
, CURLOPT_COOKIEFILE, 'cookie.txt ');
//
读取
这样 COOKIE 会自动跟上去.
不过要分两次,一是先访问产生 cookie,接着连结才能用 cookie
例子:
代码如下:
<?php
function
get_curlcuconent2(
$filename
,
$referer
)
{
$cookie_jar
= tempnam('./tmp','JSESSIONID');
$ch
= curl_init();
curl_setopt(
$ch
, CURLOPT_URL,
$filename
);
curl_setopt(
$ch
, CURLOPT_HEADER, false);
curl_setopt(
$ch
, CURLOPT_RETURNTRANSFER, 1);
//设置文件读取并提交的 cookie
路径
curl_setopt(
$ch
, CURLOPT_COOKIEJAR,
$cookie_jar
);
$filecontent
=curl_exec(
$ch
);
curl_close(
$ch
);
$ch
= curl_init();
$hostname
="www.domain.com";
//$referer="";
curl_setopt(
$ch
, CURLOPT_URL,
$filename
);
curl_setopt(
$ch
, CURLOPT_REFERER,
$referer
);
// 看这里,你也可以说你从 google
来
curl_setopt(
$ch
, CURLOPT_USERAGENT, "www.domain.com");
//$request = "JSESSIONID=abc6szw15ozvZ_PU9b-8r"; //设置 POST
参数
//curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
// 上面这句,当然你可以说你是 baidu,改掉这里的值就 ok 了,可以实现小偷的功能,