使用URL变量防止动态文件访问的最佳方法是什么?我正在连接两个URL变量,这些变量将形成我想要访问的文件名,这将加载XML。
$type = $_REQUEST['type']
//(ie. AB);
$timeframe = $_REQUEST['timeframe']
//(ie. 00.04);
//create XML document object model (DOM)
$main_doc = new DOMDocument();
$s = SITE_DIR."/data/file.".$type.".".$timeframe.".xml";
// example file.AB.00.04.xml)
// will be adding test to see if file exists
$main_doc->load($s);
答案 0 :(得分:2)
您应该检查请求字符串是否包含“..”并且不包含“/”(如果您在Windows上,则不包含“\”),以便路径不指向除“...”之外的目录你引用的那个。
也许试试这个:
$timeframe = str_replace(array('..','/','\'),array('','',''),$timeframe);