【发布时间】:2013-05-10 20:06:50
【问题描述】:
我是文件上传的新手,我意识到安全性非常重要。现在根据测试目的,在我真正想深入研究安全性之前,我只想快速上传测试,当我尝试以下“安全性”时
<?PHP
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$tmp_name = $_FILES['file']['tmp_name'];
if(isset($name)) {
if (!empty($name)) {
$location = "ufiles/";
if($_FILES['file']['type'] == "images/jpeg" || $_FILES['file']['type'] == "images/png"){
move_uploaded_file($tmp_name, $location.$name);
}
}
}
?>
此代码似乎不起作用,除非我取消文件类型检查点,否则文件不会上传。所以这显然是我的问题。但是为什么这不起作用呢?
另外:我意识到这不是保护文件类型的一种非常有效的方法,但它似乎最简单合乎逻辑,我只是很困惑为什么它不起作用。
编辑始终检查您的语法。哈哈
if($_FILES['file']['type'] == "images/jpeg" || $_FILES['file']['type'] == "images/png")
【问题讨论】:
-
$_FILES 不 $_files
-
就是这样...天啊天啊。我现在觉得自己很蠢……DOH! =[谢谢你:P
-
@Dagon 哇...打败我。哈哈。 rbn, PHP 变量区分大小写。
-
@Oberst 是的,我就是我自己,我搞砸了,只是输入了小写字母。