Hi, is there any limit of POST arguments? I have situation where on dev server my form with over 520 args is posted and saved without problems, where on production env it saves only up to 499 args...
Any ideas?
Hi, is there any limit of POST arguments? I have situation where on dev server my form with over 520 args is posted and saved without problems, where on production env it saves only up to 499 args...
Any ideas?
i think the POST limit is whatever is configured in php.ini (8M by default?)
Yes, this is controlled by the directive post_max_size, which is 8M by default.
The number of arguments doesn't matter, but you probably exceed the limit in your production.
You can run ini_get('post_max_size') in both environments to see if there is a difference.
You can't change it from ini_set, however it is possible to change the directive from .htaccess.
You need to increase POST_MAX_SIZE in php.ini (or use ini_set() on the page).
I don't think there is a limit to the number of variables sent through POST, just on their accumulated size. The limit varies from server to server.
Update: The Suhosin PHP hardening patch can in fact impose a limit on the number of request variables. The default is 200. Suhosin is installed by default on Ubuntu, so it could be the reason for your problem. Info courtesy of @Pascal Martin, cheers!
There are two factors to limiting the POST maximum size:
You can find out its value using phpinfo()
.
And the web server's limits:
In your specific case, you may want to add what kind of server you are running this on, and how big the data is. Are the 520 arguments coming anywhere near post_max_size
? What happens if you do a print_r($_REQUEST)
in the receiving script?