fopen跨服务器传递信息
2017-02-07 21:28:37
test.php
$return_data ='';
//发送请求,由于FOPEN与FSOCKOPEN的机制问题。不能直接根据COOKIE信息同步操作。因此只能发送一个GET请求。通过这个GET参数来进行判断。这边传的是BEHILL_COOKIE
$handle=fopen('http://lzm.behill.com/jg_website/passport/login.php?act=cookie_status_check&behill_cookie='.@base64_encode($_COOKIE['behill_cookie']),'r');
while(!feof($handle))
{
$return_data .= fgets($handle);
}
//如果返回的是FALSE则清空COOKIE
if(trim($return_data)=='False' ||trim($return_data)=='FalseFalse')
{
//清除数据
setcookie("userid" , "" , -86400*365,'/','.behill.com');
setcookie("useraccount" , "" , -86400*365,'/','.behill.com');
setcookie("password" , "" , -86400*365,'/','.behill.com');
setcookie("lastlogin" , "" , -86400*365,'/','.behill.com');
setcookie("logincount" , "" , -86400*365,'/','.behill.com');
setcookie("behill_cookie" , "" , -86400*365,'/','.behill.com');
}
back.php
$get_cookie = trim(base64_decode($_GET['behill_cookie']));
//解密,获取用户cookie信息
$passport_info_str = authcode($get_cookie , 'DECODE');
$passport_info_array = explode(" " , $passport_info_str );
$passport = M('passport');
$row = $passport->get_user_status($passport_info_array[0]);
if ( $row['passport_isban'] == 0 ) {
echo 'False';
}
$mysession = md5($row['passport_session'] . $row['passport_lastip']);
if ( $mysession == $passport_info_array[1] ) {
echo 'True';
}
else
{
echo 'False';
}
发表评论: