织梦dedecms系统后台添加新变量出现:Request var not allow!的解决方法


论坛上很多人都反馈说在后台添加新变量的时候会出现 “Request var not allow!” 的BUG错误,本文主要就是介绍如何去解决这个问题!下面看具体操纵: 

在DEDE根目录打开 include/common.inc.php 文件,查找到以下内容: 

//检查和注册外部提交的变量 

复制代码

function CheckRequest(&$val) {
if (is_array($val)) {
foreach ($val as $_k=>$_v) {
CheckRequest($_k); 
CheckRequest($val[$_k]);
}
} else
{
if( strlen($val)>0 && preg_match('#^(cfg_|GLOBALS)#',$val) )
{
exit('Request var not allow!');
}
}
}

将以上内容替换成以下内容: 

//检查和注册外部提交的变量 

复制代码

function CheckRequest(&$val) {
if (is_array($val)) {
foreach ($val as $_k=>$_v) {
if($_k == 'nvarname') continue;
CheckRequest($_k); 
CheckRequest($val[$_k]);
}
} else
{
if( strlen($val)>0 && preg_match('#^(cfg_|GLOBALS)#',$val) )
{
exit('Request var not allow!');
}
}
}

修改完了之后保存,再去后台试试添加新变量。