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';
  }

发表评论:

Powered by PHP 学习者(mail:517730729@qq.com)

原百度博客:http://hi.baidu.com/ssfnadn

备案号:闽ICP备17000564号-1

开源中国 PHPCHINA