【发布时间】:2015-08-02 05:39:27
【问题描述】:
我在上传文件时遇到了这个问题。我尝试在检查验证时上传我的 PDF 文件,TMP_NAME 为空,当我检查 $_FILES['document_attach']['error'] 时,值为 1,因此意味着存在错误。
但是当我尝试上传其他 PDF 文件时,它已成功上传。为什么其他PDF文件没有?
HTML
<form action="actions/upload_internal_audit.php" method="post" enctype="multipart/form-data">
<label>Title</label>
<span><input type="text" name="title" class="form-control" placeholder="Document Title"></span>
<label>File</label>
<span><input type="file" name="document_attach"></span><br>
<span><input type="submit" name="submit" value="Upload" class="btn btn-primary"></span>
</form>
PHP
if(isset($_POST['submit'])){
$title = $_POST['title'];
$filename = $_FILES['document_attach']['name'];
$target_dir = "../eqms_files/";
$maxSize = 5000000;
if(!empty($title)){
if(is_uploaded_file($_FILES['document_attach']['tmp_name'])){
if ($_FILES['document_attach']['size'] > $maxSize) {
echo "File must be: ' . $maxSize . '";
} else {
$result = move_uploaded_file($_FILES['document_attach']['tmp_name'], $target_dir . $filename);
mysqli_query($con, "INSERT into internal_audit (id, title, file) VALUES ('', '".$title."', '".$filename."')");
echo "Successfully Uploaded";
}
}else
echo "Error Uploading try again later";
}else
echo "Document Title is empty";
}
【问题讨论】:
-
在 apache 配置中设置的最大允许文件大小是多少
-
如何查看尺寸?我不熟悉这个..
-
我已经增加了 upload_max_filesize=8M 但是当我检查 phpinfo();它仍然是 2M 。如何解决?
-
文件太大了吗?您是否尝试过不经过验证就上传文件?
-
php.net/manual/en/features.file-upload.errors.php 列出所有错误代码。
1是UPLOAD_ERR_INI_SIZE:上传的文件超过了php.ini中的upload_max_filesize指令。您可能需要重新启动 apache 或 php-fpm 才能使用新的php.ini设置。