php - 上传文件 - 过滤要上传的类型

时间:2011-03-20 15:54:21

标签: php

<?php
if (($_FILES["fileToUpload"]["type"] == "image/gif")
  || ($_FILES["fileToUpload"]["type"] == "image/jpeg")
  || ($_FILES["fileToUpload"]["type"] == "image/png" )
  && ($_FILES["fileToUpload"]["size"] < 10000))
  {
  move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],
    "http://www.nhl-statistics.com/scripts/upload" . $_FILES["fileToUpload"]["name"]);
  }
else
  {
  echo "Files must be either JPEG, GIF, or PNG and less than 10,000 kb";
  }

无论我输入什么,似乎都会转到else语句。

3 个答案:

答案 0 :(得分:1)

您是否查看过$_FILES的内容?

使用var_dump($_FILES);查看您获得的值,这可能有助于您找出问题所在。

答案 1 :(得分:0)

大小以字节为单位,而不是千比特,您只允许上传大小为78kb / 10kB的文件,但您的回声表示可以上传最大10,000kb的文件。

您可能上传了太大的文件。

答案 2 :(得分:0)

解决此问题:

move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], "path/to/upload/folder" . $_FILES["fileToUpload"]["name"]);