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

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

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

01 function CheckRequest(&$val) { 
02  if (is_array($val)) { 
03   foreach ($val as $_k=>$_v) { 
04    CheckRequest($_k);  
05    CheckRequest($val[$_k]); 
06   
07  else
08  
09   if( strlen($val)>0 && preg_match('#^(cfg_|GLOBALS)#',$val) ) 
10   
11    exit('Request var not allow!'); 
12   
13  
14 }

 

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

01 //检查和注册外部提交的变量    
02    function CheckRequest(&$val) { 
03        if (is_array($val)) { 
04            foreach ($val as $_k=>$_v) { 
05                if($_k == 'nvarname'continue
06                CheckRequest($_k);  
07                CheckRequest($val[$_k]); 
08            
09        else
10        
11            if( strlen($val)>0 && preg_match('#^(cfg_|GLOBALS)#',$val)  ) 
12            
13                exit('Request var not allow!'); 
14            
15        
16    }

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