首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

curl模拟登陆有关问题

2013-10-25 
curl模拟登陆问题本帖最后由 zkg510168343 于 2013-10-22 15:29:21 编辑?php$url http://bbs.lampbrot

curl模拟登陆问题
本帖最后由 zkg510168343 于 2013-10-22 15:29:21 编辑 <?php
$url = "http://bbs.lampbrother.net/login.php";
$urls = "http://bbs.lampbrother.net";
$lgt = 0;
$user = "zkg12345";
$pass = "123456";
$question = 0;
$hideid = 1;

$temp = tempnam('./tep', 'cookie');

$postdata = "forward=&jumpurl=".$urls."&step=2&lgt=".$lgt."&pwuser=".$user."&pwpwd=".$pass."&question=".$question."&answer=&hideid=".$hideid."&cktime=";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_COOKIEJAR, $temp);


$data = curl_exec($ch);
curl_close($ch);

//echo $data;          //这里打印的时候可以看到已经登陆成功正在跳转
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://bbs.lampbrother.net/index.php');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_COOKIEFILE, $temp);

curl_exec($ch);
curl_close($ch);
?>

登陆的完成后,我打印的时候发现是登陆成功了的,显示正在跳转页面,可是再次请求首页还是未登录状态,别的页面也是没有登陆,请问这是什么问题,怎样调试

在cookie临时文件里 生成了一个 coo810B.tmp文件
值为
# Netscape HTTP Cookie File
# http://curlm.haxx.se/rfc/cookie_spec.html
# This file was generated by libcurl! Edit at your own risk.

.lampbrother.netTRUE/FALSE14139616484f62d_c_stamp1382425648
.lampbrother.netTRUE/FALSE13508896474f62d_lastvisitdeleted
.lampbrother.netTRUE/FALSE14139616484f62d_lastposother
.lampbrother.netTRUE/FALSE13508896474f62d_cideleted
.lampbrother.netTRUE/FALSE14139616484f62d_ck_info%2F%09.lampbrother.net
.lampbrother.netTRUE/FALSE13508896474f62d_regactivatedeleted

[解决办法]
要全路径!
$temp = realpath(tempnam('./tep', 'cookie'));

热点排行