eric.itzhak
eric.itzhak

Reputation: 16062

Form array gets sent full but received partially

I'm sending a large form over to server.

Now watching the developer tools i see : enter image description here

As in 560 rows has been sent, but when I print_r($_POST) I see only 500 rows.

Now I have tried setting :

ini_set('memory_limit', '1024M');

And I have post_max_size set to 8M and increasing it didn't seem to work either. Also tried setting max_input_vars to 1000000 but same result.

I am submiting the form via ajax using jQuery. I'm getting same results with Chrome and FF

Any idea what may cause this?

This is the client side script :

    $.ajax({
    type: 'POST',
    dataType: 'json',
    data: { data : fullTableToJson($('#charges_table').get(0)),title : "sometitle"},
    url: 'url with get parameters',
    success : function(result) {    

    }
});

fullTableToJson is a method that turns html table to json, it works as i've been using it in many places in my code.

Could it be related to the fact my url contains GET parameters?

Upvotes: 0

Views: 188

Answers (1)

eric.itzhak
eric.itzhak

Reputation: 16062

Well, the problem was I had max_input_vars set to 3000, and I've tried sending 560x6 items which is 3360 items, which explains the leap.

Now i've tried changing it with

ini_set('max_input_vars', 999999);

And assumed it didn't solved it, but checking phpinfo(); I saw that it hasn't changed.

Thus changed in php.ini file and it worked.

Upvotes: 3

Related Questions