how to increase maximum post variable in php

how to increase maximum post variable in php  using -'php,post,wamp'

I'm using WAMP in my local machine, when a FORM(method="POST") with 2000 input fields is submitted I'm able to read only 1001 _POST variable. i.e With Netbeans debugger I can clearly see _POST size is always 1001 if there are more than 1001 input fields in the form.

I used this java code to generate form with N input fields and tested.

The same is working fine in another machine(WAMP), where I can see all the POST variables.

Please help me to solve my problem.

asked Sep 30, 2015 by mtabakade
0 votes

5 Answers

0 votes

PHP 5.3.9 introduced the max_input_vars config option, which is defaulted to a value of 1000. Check out the Runtime Configuration section of the PHP manual. The default value and the change log are at the top of the page.

The value can be changed by updating the server's php.ini, adding an .htaccess file, or adding a line to httpd.conf.

answered Sep 30, 2015 by ashishshukla
0 votes

If you are using Suhosin with Hardened PHP, you might be hitting a maximum variables limit that it imposes. In your php.ini, you can just add

suhosin.request.max_vars = 1000 = 1000

changing 1000 to whatever you want and restart your webserver.

I ran into this on the Drupal Permissions page when there were a lot of modules installed with a large number of roles, which resulted in a ton of checkboxes. It would only save a certain number of them before anything after would just get ignored.

It sounds like this is probably not your problem, but since it's fairly likely that someone in the future may stumble upon this when searching for something related I'll go ahead and throw this in since it took me ages to figure out when I was stumped.

answered Sep 30, 2015 by android_master
0 votes

I solved my $_POST max inputs -problem by adding the following to php.ini:

max_input_vars = 5000
suhosin.request.max_vars = 5000 = 5000

Note the suhosin.request.max_vars also.

answered Sep 30, 2015 by devkumargupta
0 votes

I suspect the problem is with the amount of data coming with your POST request. There is no setting which limits the number of $_POST vars that can be set. However there is a memory limit for POST data which is 8MB by default.

In your php.ini file try modifying the value of post_max_size and set it to a higher value. Don't forget to restart apache after the change is made.

answered Sep 30, 2015 by kinnari
0 votes

I solved this problem. Open the PHP.INI configuration file and add these lines

[suhosin] = 20000

suhosin.request.max_vars = 20000

answered Sep 30, 2015 by manju bhargava