use*_*104 4 php upload jquery file-upload file
我使用dropzone.js使用JQuery处理前端的上传部分.
我的测试用例是:
上传34 MB文件.工作正常...
上传一个27 MB的文件.工作正常...
上传两个文件,每个文件是5 MB.工作正常...
上传两个文件,34 MB + 27 MB.失败,$_FILES是一个空数组
这是JQuery代码:
<script>
$(document).ready(function () {
Dropzone.options.myAwesomeDropzone = {
autoProcessQueue: false,
url: '<?= site_url("admin/video/upload"); ?>',
addRemoveLinks: true,
previewsContainer: ".dropzone-previews",
uploadMultiple: true,
parallelUploads: 50,
maxFilesize: 500, //500MB
acceptedFiles: 'video/*',
maxFiles: 100,
init: function () {
var myDropzone = this;
myDropzone.on("success", function (file, response) {
$("#success, #fail").hide();
$("#" + response).show();
});
myDropzone.on("maxfilesexceeded", function (file) {
this.removeFile(file);
});
$("#submit-all").click(function (e) {
e.preventDefault();
e.stopPropagation();
myDropzone.processQueue();
});
}
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
这是PHP代码:
public function upload() {
die(var_dump($_FILES));
}
Run Code Online (Sandbox Code Playgroud)
那么,为什么它$_FILES是空的以及如何解决它?非常感谢.
34 MB + 27 MB = 61 MB.
所以你会发布61MB.
upload_max_filesize的默认PHP值为2 MB,post_max_size的默认值为8 MB.根据您的主机,更改这两个PHP变量可以在很多地方完成,最有可能是php.ini或.htaccess(取决于您的托管情况)
你有没有在php.ini中检查过这些?
上传的每个文件的最大允许大小.
upload_max_filesize = 40M
Run Code Online (Sandbox Code Playgroud)
必须大于或等于upload_max_filesize,这是每个帖子事件上所有上传文件的总大小.
post_max_size = 40M
Run Code Online (Sandbox Code Playgroud)
如果您想上传的最大文件大小为500mb,则可以将上述两个值设置为500mb.请记住,如果您上传多个文件,则post_max_size需要是每个帖子事件的上传文件的组合文件大小.因此,如果你上传了两个500mb的文件,你可以设置upload_max_filesize = 501M和post_max_size = 1001M
| 归档时间: |
|
| 查看次数: |
438 次 |
| 最近记录: |