PHP中的文件上传:验证文件是否为gpx

时间:2013-12-03 19:23:41

标签: php security file-upload gpx

我目前正在开发一个用户可以上传图片和GPX文件的项目。验证图像没问题,但我找不到一种安全的方法来确保gpx文件不是某些恶意文件。 任何提示都非常感谢! 提前谢谢!

编辑:任何人都可以请指出为什么这段代码不起作用?不工作我的意思是它不会拒绝PDF文件。

$xml = new XMLReader();
if (!$xml->xml($_FILES["gps"]["tmp_name"], NULL, LIBXML_DTDVALID)) {
    echo '<script>alert("Not valid!");</script>';           
    exit();
}

1 个答案:

答案 0 :(得分:1)

$xmlcontents = XMLReader::open($_FILES["gps"]["tmp_name"]);

$xmlcontents->setParserProperty(XMLReader::VALIDATE, true);

if($xmlcontents->isValid() and ($xml->xml($_FILES["gps"]["tmp_name"], NULL, LIBXML_DTDVALID))) {
}
else {
    echo 'Not a valid GPS file!")';            
    exit();
}

请注意,您将文件有效性检查为xml,并且它是扩展名 试试这个