首页 › 程序设计 › php

dede后台登录出现空白页的解决方法

泡在网上的日子 / 文 发表于2014-10-01 12:55 次阅读 dedecms

在dede的迁移过程中发现后台登录功能不能用了,用打印字符串的方法一步一步排查,结果发现第一次错误出现在userlogin.class.php的keepUser方法的@session_register($this->keepUserIDTag);之后,于是在网上搜索@session_register作为关键字,发现这是因为php版本原因造成的,php5.4版本中session_register() 已经被弃用了。 也就是这个函数不再可用了。直接注释掉就可以了,不用进行注册就可以声明session。

在include/userlogin.class.php中查找function keepUser(),大概在281行
把keepUser()函数下的@session_register();注释掉。


function keepUser()
 {
     if($this->userID != '' && $this->userType != '')
     {
         global $admincachefile,$adminstyle;
         if(empty($adminstyle)) $adminstyle = 'dedecms';
         //@session_register($this->keepUserIDTag);
         $_SESSION[$this->keepUserIDTag] = $this->userID;
         //@session_register($this->keepUserTypeTag);
         $_SESSION[$this->keepUserTypeTag] = $this->userType;
         //@session_register($this->keepUserChannelTag);
         $_SESSION[$this->keepUserChannelTag] = $this->userChannel;
         //@session_register($this->keepUserNameTag);
         $_SESSION[$this->keepUserNameTag] = $this->userName;
        //@session_register($this->keepUserPurviewTag);
         $_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
         //@session_register($this->keepAdminStyleTag);
         $_SESSION[$this->keepAdminStyleTag] = $adminstyle;
         PutCookie('DedeUserID', $this->userID, 3600 * 24, '/');
         PutCookie('DedeLoginTime', time(), 3600 * 24, '/');
            
         $this->ReWriteAdminChannel();
            
         return 1;
     }
     else
     {
         return -1;


收藏 赞 (0) 踩 (0)
上一篇:关于dedecms文章处理类Archives中的body字段
我们知道/include/arc.archives.class.php文件是处理文章信息的,在文章详情页面的模版文件中那些dede标签的显示数据就是来源于此,这篇文章中主要讨论body字段。 前面我已经写了一篇如何为文章显示提供一个安卓客户端接口的文章,其中就需要对显示在android
下一篇:dede独立模型中的联动类型字段是如何在文章页面中显示枚举名的
dede的联动类型是是通过将字段和系统枚举表dede_sys_enum相关联的,独立模型的表中联动类别字段存储的是表dede_sys_enum的枚举值,这是一个数值,类似于代号的意思,当要显示独立模型的联动类别字段时,首先根据这个枚举值在dede_sys_enum中找出相应枚举名,