Php jquery上载多个文件的大小虽然足够小,但超过了post_max_大小
上载20个文件时出现以下错误,这些文件总共大约5MB大: 13820516字节的POST内容长度超过了第0行未知中8388608字节的限制 限制是正确的,因为“post_max_size”设置为8M 顺便说一下,我不想更改限制。我想找出为什么我的内容长度几乎是我实际上传内容长度的3倍 代码如下:Php jquery上载多个文件的大小虽然足够小,但超过了post_max_大小,php,jquery,upload,Php,Jquery,Upload,上载20个文件时出现以下错误,这些文件总共大约5MB大: 13820516字节的POST内容长度超过了第0行未知中8388608字节的限制 限制是正确的,因为“post_max_size”设置为8M 顺便说一下,我不想更改限制。我想找出为什么我的内容长度几乎是我实际上传内容长度的3倍 代码如下: jQuery('#uploadForm').submit(function() { // once the form us submitted // server limits: var
jQuery('#uploadForm').submit(function() { // once the form us submitted
// server limits:
var max_files = <?php echo ini_get('max_file_uploads'); ?>;
var max_size = <?php echo unc_tools_bytes_get(ini_get('post_max_size')); ?>;
var fileInput = jQuery("input[type='file']").get(0);
var actual_count = parseInt(fileInput.files.length);
var actual_size = 0;
for (var i = 0; i < fileInput.files.length; i++) {
var file = fileInput.files[i];
if ('size' in file) {
actual_size = actual_size + +file.size;
}
}
// check for max file number
if (actual_count > max_files) {
alert("Your webserver allows only a maximum of " + max_files + " files");
return false;
}
if (actual_size > max_size){
alert("Your webserver allows only a maximum of " + max_size + " Bytes, you tried " + actual_size);
return false;
}
jQuery(this).ajaxSubmit(options); // do ajaxSubmit with the obtions above
return false; // needs to be false so that the HTML is not actually submitted & reloaded
});
如果我去掉“If(实际大小>最大大小){”,让警报触发,它甚至会说:
您的Web服务器最多只允许8388608字节,您尝试了5841547
我正在用jpg文件做这件事。我尝试了许多不同大小的不同文件,当我使用20个文件时都是一样的
upload_max_filesize是2M,我试图上传的文件都在1M以下
如果我试图上传500万个更小但更大的文件,我就没有这个问题。
知道为什么以及如何修复吗?上传文件大小如何?@mitkosoft抱歉,忘了提到这一点,添加了上述信息,似乎不是问题。当您尝试上传原始文件时,原始文件是否处于压缩状态?@korgrue它们是jpg文件,不确定您是否称之为压缩文件?上传文件大小如何?@mitkosoft sorry,忘了提一下,上面添加的信息似乎不是问题。当您尝试上载原始文件时,它们是否处于压缩状态?@korgrue它们是jpg文件,不确定您是否称之为压缩文件?
var max_files = 20;
var max_size = 8388608;