0

I am using ajax file upload from this answer Sending multipart/formdata with jQuery.ajax and JavaScript code looks like this:

   function addAiFile(order_id) {
        var data = new FormData();
        data.append('order_id', order_id);
        jQuery.each(jQuery('.ai-file_upload')[0].files, function(i, file) {
            data.append('file-'+i, file);
        });
        var url='<?php echo $addAiFile; ?>';
        url=url.replace(/amp;/g, '');

        console.log(...data)

        jQuery.ajax({
            url: url,
            data: data,
            cache: false,
            processData: false,
            method: 'POST',
            type: 'POST', // For jQuery < 1.9
            success: function(answer){
                $('#ai-modal .modal-body').html(answer);
            }
        });
    }

On FrontEnd when i trigger this functoin i'm getting correct log result. But on BackEnd my $_FILES array is empty. This happens only for some files and i can't find what triggers this.

Here is my Code:

public function addAiFile(){
        $target_dir = "./";
        $target_file = $target_dir . basename($_FILES["file-0"]["name"]);
        $uploadOk = 1;
        $imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

        echo $target_file;
        print_r($_FILES);
        echo "<br>" . $_SERVER['CONTENT_LENGTH']/1000000 ; 
        echo "<br>" . ini_get('post_max_size'); 
        echo "<br>" . ini_get('upload_max_filesize');
        print_r(pathinfo($target_file));
        die();
}

If there is an error php prints this:

./-0.Array ( )

34.860443

80M

80M Array ( [dirname] => ./ [basename] => -0. [extension] => [filename] => -0 )

If there is no error with a file i'm getting this

./oaid.png Array ( [file-0] => Array ( [name] => oaid.png [type] => image/png [tmp_name] => /tmp/php57HOx7 [error] => 0 [size] => 16554 ) )

0.016836

80M

80M Array ( [dirname] => ./ [basename] => oaid.png [extension] => png [filename] => oaid )

I would post a file here as an example, but it's 30mb. Also it's important to note that it happens only for some files. How can i fix this?

Community
  • 1
  • 1
tttaaabbb
  • 407
  • 7
  • 19

0 Answers0