destoon用户在使用360浏览器时总是会自动退出,经查后发现是cookie丢失造成的,但丢失的原因众说不一!
对此的解决方法也不同,测试发现修改360浏览器的设置,或者IE的兼容性视图设置等均无效。
经验证后可行的解决方法如下:
增加 session 用来保存用户的auth信息
1.在 /module/member/member.class.php 的 364行增加以下代码:
if(!is_object($session)) $session = new dsession();
$_SESSION['auth'] = $auth;
$_SESSION['username'] = $user['username'];
2.在 /module/member/member.class.php 的logout方法中增加以下代码:
session_destroy();
修改后的logout的代码如下:
function logout() {
set_cookie('auth', '');
session_destroy();
return true;
}
3.在根目录的 common.inc.php 找到:
$destoon_auth = get_cookie('auth');
替换为如下代码:
$destoon_auth='';
if(get_cookie('auth')){
$destoon_auth = get_cookie('auth');
}else{
$destoon_auth = isset($_SESSION['auth'])?$_SESSION['auth']:'';
}
完成后问题得以解决!
您可能感兴趣的文章:设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码多种方法实现360浏览器下禁止自动填写用户名密码用js判断是否为360浏览器的实现代码JS判断是否360安全浏览器极速内核的方法360浏览器文本框获得焦点后被android软键盘遮罩该怎么办分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为htmljQuery模拟360浏览器切屏效果幻灯片(附demo源码下载)用Meta标签控制360浏览器默认极速模式打开自己的网站浅谈解决360兼容模式浏览器的方法