正在加载中……
最新消息:欢迎大家访问,导航分类不完善,如果找不到自己想要的文章,可以通过【关键词】来进行搜索,^_^!

[解决方法] php 5.4以上dedecms5.7登陆后台空白,标题不能为空错误

CMS相关 REKFAN.COM 4038浏览 0评论

更多


今天安装了最新版本的dedecms
http://updatenew.dedecms.com/base-v57/package/DedeCMS-V5.7-GBK-SP1.tar.gz
然后发现 后台的基本参数不能保存了,经测试只能保存英文,中文直接保存后返回的空白!
然后再本地测试可以,最终发现是php版本问题,linux的环境是 php5.4.20
经过搜索找到解决方法了看下面 “2.dedecms发布文章提示"标题不能为空" ”的解决方法!

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');
}

转载请注明:|REKFAN|系统运维| » [解决方法] php 5.4以上dedecms5.7登陆后台空白,标题不能为空错误

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址