亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

phpcms phpsso不能同步退出的解決方法

發布時間:2020-08-11 11:38:02 來源:億速云 閱讀:136 作者:小新 欄目:建站服務器

phpcms phpsso不能同步退出的解決方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

phpcms不能同步退出怎么辦?phpcmsv9 phpsso無法同步退出 ?

phpcmsv9自帶了一個phpsso_server用于多站點同步登錄,還可以整合ucenter。為了不改動太多的代碼,今天整合ECSHOP和PHPCMS的時候還是用了這個phpsso。

ECSHOP很方便,簡單配置了一下就可以和ucenter通信了。這個phpsso搞了半天沒有成功和ucenter通信。經過幾個小時的琢磨,最終還是成功讓他們通信了。

注冊,登錄,都可以同步,唯獨在phpcms中退出登錄時ECSHOP沒有退出,反之確可以。

問題出現的原因:

首頁看到了PHPCMS的登出的代碼里面有一句同步登出的語句:

$synlogoutstr = $this->client->ps_member_synlogout();

這個同步登出的代碼是這樣的

/** 
 * 同步退出 
 * @param string $uid 
 * @return string javascript用戶同步退出js 
 */  
public function ps_member_synlogout() {  
    return $this->_ps_send("synlogout', array());  
}

注意這里_ps_send的第二個參數是一個空的數組

再看到phpsso_server中phpsso類的構造函數:

if(isset($_POST["data'])) {  
    parse_str(sys_auth($_POST['data'], 'DECODE', $this->applist[$this->appid]['authkey']), $this->data);  
              
    if(emptyempty($this->data) || !is_array($this->data)) {  
        exit('0');  
    }  
} else {  
    exit('0');  
}

這里對$this->data有一個判斷,如果empty返回true就直接返回0不會再執行下面的同步退出代碼了。而上面一步可以看到調用同步登出時傳入的data參數恰恰就是array(),empty當然會返回true。于是調用同步退出就在這里終止。

問題的解決辦法:

知道了原因要想解決就很容易了,主要有兩種。

保險一點的方法是到ps_member_synlogout里面給那個空的數組隨便增加一個元素。

第二種就是去掉empty($this->data)這個判斷。

感謝各位的閱讀!看完上述內容,你們對phpcms phpsso不能同步退出的解決方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

万源市| 互助| 民乐县| 江陵县| 河南省| 虞城县| 广南县| 瑞昌市| 碌曲县| 阿鲁科尔沁旗| 昭觉县| 连云港市| 乐至县| 嘉义市| 商河县| 夹江县| 绥德县| 顺义区| 乐清市| 牙克石市| 理塘县| 项城市| 罗定市| 聂拉木县| 黑水县| 琼海市| 胶州市| 西乌珠穆沁旗| 堆龙德庆县| 商南县| 油尖旺区| 拉萨市| 肥城市| 交城县| 岳阳市| 平阴县| 丰宁| 上高县| 赞皇县| 菏泽市| 凤庆县|