PutCookie(‘DedeLoginTime’, time(), 3600 * 24, ‘/’);
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
PHP 5.4相对与5.3的变化还是很大的,废除了不少原因的函数,这也导致了一些CMS无法完美支持的问题,比如DedeCMS系统。
return 1;
}
@session_register($this->keepUserPurviewTag);
解决方法一:
找到include文件夹中的userlogin.class.php文件中把所有带有session_register的全部删除即可。
// @session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepUserPurviewTag] = $this->keepUserPurviewTag;
$_SESSION[$this->keepUserNameTag] = $this->keepUserNameTag;
if($this->userID != ” && $this->userType != ”)
$_SESSION[$this->keepUserIDTag] = $this->userID;
@session_register下的所有语句屏蔽掉
$this->ReWriteAdminChannel();
$_SESSION[$this->keepUserNameTag] = $this->userName;
$_SESSION[$this->keepUserTypeTag] = $this->keepUserTypeTag;
if(empty($adminstyle)) $adminstyle = ‘dedecms’;
@session_register($this->keepUserNameTag);
if(empty($adminstyle)) $adminstyle = ‘dedecms’;
替换成
[email protected]_register($this->keepUserIDTag);
PutCookie(‘DedeUserID’, $this->userID, 3600 * 24, ‘/’);
PutCookie(‘DedeLoginTime’, time(), 3600 * 24, ‘/’);
@session_register($this->keepUserIDTag);
PutCookie(‘DedeUserID’, $this->userID, 3600 * 24, ‘/’);
else{….以下省略
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
function keepUser()
{
代码如下 复制代码
{
$_SESSION[$this->keepUserIDTag] = $this->keepUserIDTag;
解决方法二:
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
$_SESSION[$this->keepUserNameTag] = $this->userName;
PutCookie(‘DedeUserID’, $this->userID, 3600 * 24, ‘/’);
global $admincachefile,$adminstyle;
[email protected]_register($this->keepUserNameTag);
$_SESSION[$this->keepUserTypeTag] = $this->userType;
@session_register($this->keepUserTypeTag);
@session_register($this->keepUserChannelTag);
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
至此问题解决。
在PHP 5.4下,登录DedeCMS后台输入用户名和密码后没有提示显示为空白,百度,百度,主要原为是php5.4的版本废除了session_register函数。可以采用如$_SESSION[$this->keepUserIDTag] = $this->userID; 这种方式处理完整代码如下:
打开 include/userlogin.class.php这个文件,百度,在287行到308行原内容如下:
@session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepUserTypeTag] = $this->userType;
PutCookie(‘DedeLoginTime’, time(), 3600 * 24, ‘/’);
[email protected]_register($this->keepUserPurviewTag);
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
// @session_register($this->keepUserChannelTag);
[email protected]_register($this->keepUserTypeTag);
$_SESSION[$this->keepAdminStyleTag] = $this->keepAdminStyleTag;
global $admincachefile,$adminstyle;
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
$_SESSION[$this->keepUserIDTag] = $this->userID;
$_SESSION[$this->keepUserChannelTag] = $this->keepUserChannelTag;