解决DEDECMS Call to undefined function dede_htmlspecialchars

织梦官方在2015年6月18日更新了织梦5.7,为了兼容php5.4+,修改了/include/common.func.php,可能有些模板也改动过这个文件,这样会导致在安装模板时,/include/common.func.php文件被覆盖,从而在发布文章时、打开文件管理器对文件进行编辑时、增加自定义表单时等,会出现“Call to undefined function dede_htmlspecialchars()”这样的错误提示。

解决办法如下:

打开/include/common.func.php,搜索“function RunApp”,在这个函数的上面添加织梦新版本新增的函数:dede_htmlspecialchars,具体代码如下:

function dede_htmlspecialchars($str) { 

global $cfg_soft_lang; 

if (version_compare(PHP_VERSION, '5.4.0', '<')) return htmlspecialchars($str); 

if ($cfg_soft_lang=='gb2312') return htmlspecialchars($str,ENT_COMPAT,'ISO-8859-1'); 

else return htmlspecialchars($str); 

}