通过网上网友指点然后再再当地测试可以,终究发明是php版本题目,linux的环境是 php5.4.20,经过搜寻寻到解决办法了看下面.
dedecms安装完成后会涌现登陆后台空白,发表文章时提醒”标题不能为空”.
1.解决dedecms登陆后台空白差错
由于php5.4的版本破除了session_register,所以需要去除session_register函数,代码如下:
修改:“include/userlogin.class.php”,注释掉session_register,修改后如下:
//@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;
2.dedecms发表文章提醒"标题不能为空"
现象是发表英文标题没题目,发表中文会提醒“标题不能为空”,由于htmlspecialchars在php5.4默许为utf8编码,gbk编码字符串经 htmlspecialchars 转义后的中文字符串为空,也就是标题为空,所以给htmlspecialchars增加ENT_COMPAT ,'GB2312'参数修改编码默许值.
解决办法:
1.在dede安装名目施行【linux环境】如下代码:
sed -i "s/htmlspecialchars(/gbkhtmlspecialchars(/g" `grep htmlspecialchars\( -rl *`
2./include/common.func.php中任意位置增加函数,代码如下:
function gbkhtmlspecialchars($str)
{
return htmlspecialchars($str, ENT_COMPAT ,'ISO-8859-1');
}