3

我无法让我的上传脚本适用于文件格式 pdf、doc、odt 和 txt。有没有办法接受所有文件格式,只是对象上的 maxsize 有限?这是我的脚本:

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png", "doc", "odt", "pdf", "txt");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "application/pdf")
|| ($_FILES["file"]["type"] == "application/txt")
|| ($_FILES["file"]["type"] == "application/doc")
|| ($_FILES["file"]["type"] == "application/odt"))
&& ($_FILES["file"]["size"] < 50000)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Feilmelding: " . $_FILES["file"]["error"] . "<br>";
    }
  else
    {
    echo "Denne filen er lastet opp: " . $_FILES["file"]["name"] . "<br>";
    echo "Type fil:: " . $_FILES["file"]["type"] . "<br>";
    echo "Størrelse: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " Filen eksisterer, bytt navn. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Filen er lagret her: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Feil Filtype";
  }
?>

它适用于图片,但不适用于应用程序。任何帮助将不胜感激,祝您前夜愉快

提前谢谢你:)

4

1 回答 1

6

您使用了不正确的媒体类型。正确的媒体类型是:

  • .doc 的应用程序/msword
  • .txt 的文本/纯文本
  • .odt 的应用程序/vnd.oasis.opendocument.text
  • .pdf 的应用程序/pdf
于 2013-10-10T17:26:02.420 回答