Website Forms not saving in Wordpress, Drupal or PHP

On very large forms (with lots of form elements) you can find that your form does not save. This is due to a PHP setting max_input_vars. The default setting for this is usually 1000. That means that if the form has more than 1000 elements then elements past 1000 will be omitted. Therefore the form can save partially.

This can be particularly prevalent in permissions forms that have multiple roles and multiple permissions e.g. 100 permissions and ten roles will take you to the limit quite easily.

There are various ways to change this setting either in your php.ini file max_input_vars = 4000 or it can be put in a .htaccess file php_value max_input_vars 4000.

If you are changing your Apache server configuration in php.ini then you probably know what you are doing, if not then the exact steps may vary but will probably be something like:
* locate php.ini This shows you where your php.ini is
* sudo nano /etc/php5/apache2/php.ini Use the path from above
* Change ; max_input_vars = 1000 to max_input_vars = 4000 or another appropriate number
* Save and quit
* Restart Apache sudo apache2ctl restart

The downside? Yes there is some. The PHP documentation says that a large setting can make your site more susceptible to denial of service attacks.

Post new comment

By submitting this form, you accept the Mollom privacy policy.

User login

Author of...

  • @iainfarrell oooh, better Ubuntu, that's nice 15 years 5 weeks ago
  • @philhawksworth: Looking for an amazing web developer to join @TheTeam with superb HTML, CSS and Javascript fu. Contact me if that's you. 15 years 5 weeks ago
  • @iainfarrell Do they use Photoshop in Canonical land? 15 years 5 weeks ago
  • Windows uninstall program: Checking for necessary disk space, oooook.... 15 years 5 weeks ago
  • @iainfarrell loving all the references 15 years 6 weeks ago
  • Glad that a week with far too much Windows pain is over 15 years 6 weeks ago
  • anyone ever had hook_mail not triggering? #drupal I've got mimemail, advanced contact and contact redirect installed 15 years 6 weeks ago
  • Enjoying my well spent £3 to listen to my #last.fm loved tracks for a month 15 years 6 weeks ago
Oliver Polden