phpwind用360上传附件出现未登录的解决方法

首先参考如下帖子

360浏览器不能上传图片“您没有登录”,临时解决办法。|http://www.phpwind.net/read-htm-tid-1652323-page-1.html

可以直接去原帖看,也可以看看我下面的

查找require/common.php 510行

$key = substr(md5($GLOBALS['pwServer']['HTTP_USER_AGENT'] . $GLOBALS['db_hash']), 8, 18);

替换为

if(strpos($GLOBALS['pwServer']['HTTP_USER_AGENT'],”360SE”)) {
$key = substr(md5(‘abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWYXZ’ . $GLOBALS['db_hash']), 8, 18);
}else{
$key = substr(md5($GLOBALS['pwServer']['HTTP_USER_AGENT'] . $GLOBALS['db_hash']), 8, 18);
}

 

查找require/common.php 1103行

return md5($GLOBALS['pwServer']['HTTP_USER_AGENT'] . $pwd . $GLOBALS['db_hash']);

替换为

if(strpos($GLOBALS['pwServer']['HTTP_USER_AGENT'],”360SE”)) {
return md5(‘abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWYXZ’ . $pwd . $GLOBALS['db_hash']);
}else{
return md5($GLOBALS['pwServer']['HTTP_USER_AGENT'] . $pwd . $GLOBALS['db_hash']);
}

 

查找global.php  996行

return substr(md5($str . $app . $GLOBALS['pwServer']['HTTP_USER_AGENT']), 8, 8);

替换为

if(strpos($GLOBALS['pwServer']['HTTP_USER_AGENT'],”360SE”)) {
//echo substr(md5($str . $app . ‘abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWYXZ’), 8, 8);
return substr(md5($str . $app . ‘abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWYXZ’), 8, 8);
}else{
//echo substr(md5($str . $app . $GLOBALS['pwServer']['HTTP_USER_AGENT']), 8, 8);
return substr(md5($str . $app . $GLOBALS['pwServer']['HTTP_USER_AGENT']), 8, 8);
}

 

覆盖即可,具体原理不多说了,就是垃圾360浏览器来回切换浏览器版本标示的缘故。选定只要是360浏览器,都识别成固定版本即可。

此条目发表在 二次开发 分类目录。将固定链接加入收藏夹。

phpwind用360上传附件出现未登录的解决方法》有 1 条评论

  1. palhotel 说:

    原来它来回切换浏览器版本标识啊,我说他们怎么经常丢失cookies呢?连ie6都不如

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>