无法上传文档和docx文件

问题描述:

在这里我想上传pdf,doc和docx文件。 PDF文件正在上传,但doc和docx文件未上传。我保留enctype="multipart/form-data"财产form标记。我的代码有什么问题。无法上传文档和docx文件

if ((($_FILES["uploadjob"]["type"] == "application/pdf") 
    || ($_FILES["uploadjob"]["type"] == "application/doc") 
    || ($_FILES["uploadjob"]["type"] == "application/docx"))) { 
    if ($_FILES["uploadjob"]["error"] > 0) { 
     echo "Return Code: ".$_FILES["uploadjob"]["error"]."<br />"; 
    } else { 
     move_uploaded_file($_FILES["uploadjob"]["tmp_name"], "jobuploads/".$_FILES["uploadjob"]["name"]); 
     // echo $_FILES["file"]["tmp_name"]; 
     $filename = $_FILES["uploadjob"]["name"]; 
    } 
} else { 
    echo "<br><br><br><center><font size='3' color='red'>Invalid file. Please upload only pdf, doc or docx files.</font><br><br> This page will be redirected after 5 seconds, Please wait................</center>"; 
    echo "<meta HTTP-EQUIV='REFRESH' content='5; url=jobopening.php'>"; 
    exit; 
} 
+1

你能打印'$ _FILES [“uploadjob”] [“type”]的值吗'也许这些文件的MIME类型不是这一个。我记得例如doc是'application/msword'官方的一个。 – yvan

+0

我已经完成了你的建议。我只上传了d​​oc文件。它给了“application/vnd.openxmlformats-officedocument.wordprocessingml.document”。 – Hearaman

+0

你有你的答案,类型是不正确的在你的条件:) – yvan

检查MIME类型上载的文件,你的代码的其余部分看起来是正确的。您可以使用$_FILES[]["type"]进行检查。如果Mime类型不同,请将其添加到IF条件中,然后查看它是否有效。

如果仍不起作用,请检查文件大小是否低于PHP.ini中设置的限制。您可以通过phpinfo()找到文件大小限制;