php-上载文件-要上载的筛选类型

php-上载文件-要上载的筛选类型,php,Php,大小以字节为单位,而不是千位,您只允许上载78kb/10kB以下的文件,但您的echo表示可以上载高达10000KB的文件 您可能上载了太大的文件。大小以字节为单位,而不是千位,您只允许上载78kb/10kB以下的文件,但您的echo说最多可以上载10000KB的文件 您可能正在上载过大的文件。修复此问题: <?php if (($_FILES["fileToUpload"]["type"] == "image/gif") || ($_FILES["fileToUpload"]["ty

大小以字节为单位,而不是千位,您只允许上载78kb/10kB以下的文件,但您的echo表示可以上载高达10000KB的文件


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

大小以字节为单位,而不是千位,您只允许上载78kb/10kB以下的文件,但您的echo说最多可以上载10000KB的文件

您可能正在上载过大的文件。

修复此问题:

<?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";
  }
解决这个问题:

<?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";
  }

你看过
$\u文件的内容了吗


使用
var\u转储($\u文件)
要查看您得到的值,这可能有助于确定您的问题。

您是否查看了
$\u文件的内容


使用
var\u转储($\u文件)
要查看您得到的值,这可能会帮助您确定问题所在。

除了上面Unicron的有用注释外,请注意逻辑运算符的优先级:您的AND绑定到最后一个OR。用更多的括号?小心!这些MIME类型由用户提供,可能是完整的。如果您使用的是PHP5.3,请使用获取文件的真正MIME类型。如果您不使用5.3,您可以使用。不应使用
move_uploaded_file()
将上载的文件移动到URL-这将进行另一次上载,这很可能不是您想要的。除了上面Unicron的有用注释外,请注意逻辑运算符优先级:您的AND绑定到最后一个OR。用更多的括号?小心!这些MIME类型由用户提供,可能是完整的。如果您使用的是PHP5.3,请使用获取文件的真正MIME类型。如果您没有使用5.3,您可以改为使用。
move\u uploaded\u file()
不应用于将上载的文件移动到URL-这是在进行另一次上载,这很可能不是您想要的。