Home >Backend Development >PHP Tutorial >curl模拟登陆不成功

curl模拟登陆不成功

WBOY
WBOYOriginal
2016-06-20 12:31:061182browse

curl真蛋疼老是遇到问题- -

$cookie_file=dirname(__FILE__).'/cookie.txt';
$data='username=账户&password=密码';
$curlobj=curl_init('http://passport.sundns.com/index.php?client_id=sundns');
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER,1);
curl_setopt($curlobj, CURLOPT_POST,1);
curl_setopt($curlobj, CURLOPT_POSTFIELDS,$data);
curl_setopt($curlobj, CURLOPT_COOKIEJAR,$cookie_file);
$first=curl_exec($curlobj);
curl_close($curlobj);


$curlobj=curl_init('http://www.sundns.com/member.php');
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER,1);
curl_setopt($curlobj, CURLOPT_COOKIEFILE,$cookie_file);
$output=curl_exec($curlobj);
curl_close($curlobj);
echo $output;

目录下的cookie.txt:
# Netscape HTTP Cookie File
# http://curl.haxx.se/docs/http-cookies.html
# This file was generated by libcurl! Edit at your own risk.

#HttpOnly_passport.sundns.com FALSE / FALSE 0 PHPSESSID odjcjs622gmhg5k9b2hu92m047


mysql报错:
Not Found
The requested URL /test/login.php was not found on this server.

是想跳到个人页面的却报了错,为什么啊


回复讨论(解决方案)

换了种写法,还是不成功
$curl = curl_init();
$cookie_jar = tempnam('D:/wamp/www/test','cookie');
curl_setopt($curl, CURLOPT_URL,'http://www.nidebook.com/do/login.php');//登陆界面
curl_setopt($curl, CURLOPT_POST, 1);
$request = 'username=用户名&password=密码';
curl_setopt($curl, CURLOPT_POSTFIELDS, $request);
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_jar);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_exec($curl);
curl_close($curl); 

$curl2 = curl_init();
curl_setopt($curl2, CURLOPT_URL, 'http://www.nidebook.com/member/homepage.php');//个人中心
curl_setopt($curl2, CURLOPT_HEADER, false);
curl_setopt($curl2, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl2, CURLOPT_COOKIEFILE, $cookie_jar);
$content = curl_exec($curl2);
echo $content;

执行后还是用户登陆界面,显示用户不存在,怀疑是cookie有问题

cookie里的数据:
# Netscape HTTP Cookie File
# http://curl.haxx.se/docs/http-cookies.html
# This file was generated by libcurl! Edit at your own risk.
www.nidebook.com FALSE / FALSE 1461245580 USR eauxwntm%090%091461159180%09http%3A%2F%2Fwww.nidebook.com%2Fdo%2Flogin.php


将form 的一些hidden值也带过去

将form 的一些hidden值也带过去



原来是这样,谢谢了,没人教碰到问题真是两眼一抹黑
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:php preg_matchNext article:PHP输入json数据的问题