Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php jquery上载多个文件的大小虽然足够小,但超过了post_max_大小_Php_Jquery_Upload - Fatal编程技术网

Php jquery上载多个文件的大小虽然足够小,但超过了post_max_大小

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

上载20个文件时出现以下错误,这些文件总共大约5MB大:

13820516字节的POST内容长度超过了第0行未知中8388608字节的限制

限制是正确的,因为“post_max_size”设置为8M

顺便说一下,我不想更改限制。我想找出为什么我的内容长度几乎是我实际上传内容长度的3倍

代码如下:

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;