HTML表单不会上传mp3文件

时间:2015-08-26 23:49:01

标签: php html

我一直在尝试使用html和php上传mp3文件时遇到麻烦。它适用于我尝试的每种文件格式,但是mp3。

<form action="output.php" method="post" enctype="multipart/form-data" id="uploads">
<p>From computer<br />
<input name="userfile" type="file" /></p>
<p><input type="submit" class="send" value="Convert file" name="submit" /></p>
</form>

当我尝试使用print_r($ _ FILES)获取有关该文件的信息时,output.php会打印一个空数组。怎么会发生这种情况,有没有解决方案?

提前致谢!

问候!

1 个答案:

答案 0 :(得分:0)

这是可以帮助您的代码。

 <?php
      $extensions = array("jpg", "jpeg", "gif", "png", "mp3", "mp4", "wma");//File formate here
      $extension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);

      if (($_FILES["file"]["type"] == "audio/mp3") //You can check another file uding or (||) operator

      && in_array($extension, $extensions))

        {
        if ($_FILES["file"]["error"] > 0)
          {
          echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
          }
        else
          {
          echo "Upload: " . $_FILES["file"]["name"] . "<br />";
          echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

          if (file_exists("upload/" . $_FILES["file"]["name"]))
            {
            echo $_FILES["file"]["name"] . " already exists. ";
            }
          else
            {
            move_uploaded_file($_FILES["file"]["tmp_name"],
            "upload/" . $_FILES["file"]["name"]);
            echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
            }
          }
        }
      else
        {
        echo "Invalid file";
        }
      ?>