ソースを参照

fixed Open H5

stanley-king 9 年 前
コミット
c35652d7dd
2 ファイル変更16 行追加9 行削除
  1. 14 7
      helper/session.php
  2. 2 2
      mobile/control/login.php

+ 14 - 7
helper/session.php

@@ -15,6 +15,7 @@ class session
     const expire_min = 6000;
     const prefix = 'MPHPSESSID';
     const session_name = 'MPHPSESSID';
+    const local_test = false;
 
     private $expire_time;
 
@@ -47,8 +48,6 @@ class session
         $this->fdestroy = false;
         session_start();
         $_SESSION['MPHPSESSID'] = $_COOKIE[self::session_name];
-//        Log::record("_SESSION[MPHPSESSID]=" . $_SESSION['MPHPSESSID'], Log::DEBUG);
-
     }
 
     public function end()
@@ -89,7 +88,7 @@ class session
             $msid = $_POST['HPHPSESSID'];
             if($sid != $msid) {
                 $sid = $msid;
-                fcgi_setcookie("MPHPSESSID","{$sid}",time() + self::expire_min * 60,'/', '.lrlz.com');
+                $this->set_cookie($sid);
                 $_COOKIE[self::session_name] = $sid;
             }
         }
@@ -99,8 +98,7 @@ class session
             $ret = session_regenerate_id(false);
             if($ret == true) {
                 $sid = session_id();
-                $this->expire_time = time() + self::expire_min * 60;
-                fcgi_setcookie("MPHPSESSID","{$sid}",$this->expire_time,'/', '.lrlz.com');
+                $this->set_cookie($sid);
                 $_COOKIE[self::session_name] = $sid;
                 $this->sessid = $sid;
             } else {
@@ -118,8 +116,7 @@ class session
                 $ret = session_regenerate_id(false);
                 if($ret == true) {
                     $sid = session_id();
-                    $this->expire_time = time() + self::expire_min * 60;
-                    fcgi_setcookie("MPHPSESSID","{$sid}",$this->expire_time,'/', '.lrlz.com');
+                    $this->set_cookie($sid);
                     $this->sessid = $sid;
                     $_COOKIE[self::session_name] = $sid;
                 } else {
@@ -155,6 +152,16 @@ class session
     public function onGc($expire) {
         return true;
     }
+
+    private function set_cookie($sid)
+    {
+        $this->expire_time = time() + self::expire_min * 60;
+        if(self::local_test) {
+            fcgi_setcookie("MPHPSESSID","{$sid}",$this->expire_time);
+        } else {
+            fcgi_setcookie("MPHPSESSID", "{$sid}", $this->expire_time, '/', '.lrlz.com');
+        }
+    }
 }
 
 

+ 2 - 2
mobile/control/login.php

@@ -37,7 +37,7 @@ class loginControl extends mobileHomeControl
     public function loginOp()
     {
         if ($_SESSION['is_login'] == '1') { //检查是否已经登录
-            return self::outsuccess(array('HPHPSESSID' => $_SESSION['MPHPSESSID']));
+            return self::outsuccess(array('member_id' => $_SESSION['member_id'],'HPHPSESSID' => $_SESSION['MPHPSESSID']));
         }
 
         if (process::islock('login')) { //检查登录操作是否已经锁定
@@ -96,7 +96,7 @@ class loginControl extends mobileHomeControl
         Model('goods_browse')->mergebrowse($_SESSION['member_id'], $_SESSION['store_id']);
         $this->addMbUseToken($_SESSION['MPHPSESSID']);
 
-        return self::outsuccess(array('HPHPSESSID' => $_SESSION['MPHPSESSID']));
+        return self::outsuccess(array('member_id' => $_SESSION['member_id'],'HPHPSESSID' => $_SESSION['MPHPSESSID']));
     }
 
     private function register_open($model_member,$type,$openid)