phpcms2008sp4的gbk版本在后台编辑文章时发现标题、内容等不显示,如下图:
![phpcms2008sp编辑内容不显示](http://www.111cn.net/get_pic/2015/06/07/20150607211058793.jpg)
经排查发现phpcms2008sp4在处理文章信息时使用的即htmlspecialchars参数问题导致了中文丢失(在php5.4/5.5版本需补全参数)。直接使用htmlspecialchars($data[$field], ENT_QUOTES)返回空值,没有作任何处理。
解决方法:
在 data\cache_model\content_form.class.php中查找
$value = isset($data[$field]) ? htmlspecialchars($data[$field], ENT_QUOTES) : '';
修改为:
$value = isset($data[$field]) ? htmlspecialchars($data[$field], ENT_QUOTES,'GB2312') : '';