有时候我们做模板的时或者仿站时,会遇到系统提示:【模板文件中有非法代码】的提示,这该如何解决呢?
出现这种提示,是因为SDCMS内置了恶意关键字拦截程序,这些词语可能会是恶意代码或非法代码。模板中代码那么多,我们怎么准确的找到具体的代码呢?
以SDCMS四合一为例,首先我们打开【app/function.php】,找到【check_bad函数】,找到这行代码:
return $num?$num:0;
在这行代码的上一行,添加一行输入数组的代码,添加后效果如下:
print_r($match); return $num?$num:0;
添加后保存,再运行,即可看到如下错误提示:
Array ([0] => Array([0] => eval()[1] => Array([0] => eval() ) 模板文件中有非法代码(theme/2021005/index.php)
这个提示中的eval就是导致系统拦截的原因,我们只需要去模板中找到对应的代码片段,根据实际情况合理修改或删除即可。