![使用phpstudy时dedecms后台页面空白解决方法(PHP版本原,第1张 使用phpstudy时dedecms后台页面空白解决方法(PHP版本原,第1张](/aiimages/%E4%BD%BF%E7%94%A8phpstudy%E6%97%B6dedecms%E5%90%8E%E5%8F%B0%E9%A1%B5%E9%9D%A2%E7%A9%BA%E7%99%BD%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95%EF%BC%88PHP%E7%89%88%E6%9C%AC%E5%8E%9F.png)
使用phpstudy时dedecms后台页面空白解决方法(PHP版本原
今天把电脑上的phpStudy升级到2013版。在登录本地织梦dedecms5.7时,/dede/login.php居然显示空白。由于周五我安装了windows8,因为是电脑问题,等我关掉防火墙配置好电脑服务后,发现还是不行。在百度后终于得到高人的日志指点。
原因很简单,phpstudy2013版是用的php5.4,而dedecms的login.php中使用了一个被php5.4抛弃不用的函数(是不是真的抛弃我不知道,反正原文这么写的)
session_register()
意思就是这说个函数不能用了,想用也用不了。方法很简单,直接注释掉,不用进行注册就可以声明session。
在dedecms目录include/userlogin.class.php中查找
function keepUser()
大概在281行,把keepUser()函数下的 @session_register(); 整段注释掉(删除也可以),结果如下:
function keepUser()
{
if($this->userID != '' && $this->userType != '')
{
global $admincachefile,$adminstyle;
if(emptyempty($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;
}
}
另外的解决方法就是在include/userlogin.class.php 中声明一个函数
function session_register()
{
return true;
}
评论列表(0条)