尽管所有后端代码都正确,但文件未上传。我用另一个前端样式的代码测试了后端代码,它工作得很好。
但在我的前端代码中它没有上传任何文件。我还删除了所有 css 和脚本来解决问题。
这是我的简单前端 HTML 表单:
<form action="upload_handler.php" method="post">
Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload" name="submit">
</form>
你忘了提及
enctype="multipart/form-data"
<form action="upload_handler.php" enctype="multipart/form-data" method="post">
Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload" name="submit">
</form>
问题出在您的
<form>
标签中的属性。要成功地以 HTML 格式正确上传文件,应满足以下要求。
确保表单使用method="post"
表单还需要以下属性:enctype="multipart/form-data"。
它指定提交表单时使用哪种内容类型
所以只需将这个
enctype="multipart/form-data"
部分添加到您的 <form>
标签中即可。
有多种原因可能导致您的 HTML 表单文件上传无法正常工作。以下是一些最常见的:
enctype="multipart/form-data"
属性。
该属性告诉浏览器以某种方式对表单数据进行编码
允许上传文件。name
属性。这个属性
用于识别表单数据中的文件。如果您已检查所有这些内容,但文件上传仍然无法正常工作,那么您可能需要联系您的网络托管提供商寻求帮助。
您可以检查以下一些其他事项:
accept
属性设置为您想要允许的文件类型。例如,要仅允许 JPEG 和 PNG 图像,您可以将 accept
属性设置为 image/jpeg
、image/png
。file
属性中指定文件的完整路径。我希望这有帮助!