Как увеличить максимальную переменную POST в PHP?

Я использую WAMP на своей локальной машине, когда отправляется FORM (method = "POST") с 2000 полями ввода. Я могу читать только 1001 _POST. т.е. с отладчиком Netbeans я могу ясно видеть, что размер _POST всегда 1001, если в форме больше 1001 полей ввода.

Я использовал этот java-код http://ideone.com/GAw14 для создания формы с N поля ввода и тестирования.

То же самое отлично работает на другой машине (WAMP), где я могу видеть все переменные POST.

Пожалуйста, помогите мне решить мою проблему.

В PHP 5.3.9 представлен параметр конфигурации max_input_vars , значение которого по умолчанию равно 1000. Ознакомьтесь с разделом Runtime Configuration руководства PHP. Значение по умолчанию и журнал изменений находятся в верхней части страницы.

Значение можно изменить, обновив php.ini сервера, добавив файл .htaccess или добавив строку в httpd.conf .

Если вы используете Suhosin с Hardened PHP, вы можете получить максимальный предел переменных, который он налагает. В php.ini вы можете просто добавить

 [suhosin] suhosin.request.max_vars = 1000 suhosin.post.max_vars = 1000 

меняя 1000 на все, что вам нужно, и перезагрузите веб-сервер.

Я столкнулся с этим на странице Drupal Permissions, когда было установлено много модулей с большим количеством ролей, что привело к тонне флажков. Это только спасло бы определенное количество из них, прежде чем что-то после этого просто проигнорировалось.

Похоже, что это, вероятно, не ваша проблема, но, поскольку довольно вероятно, что кто-то в будущем может наткнуться на это при поиске чего-то связанного, я пойду вперед и брошу это, поскольку мне потребовались годы, чтобы понять, когда я был в тупике ,

Я решил свои $ _POST max input -problem, добавив следующее в php.ini:

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

Обратите внимание также на suhosin.request.max_vars.

Я решил эту проблему. Откройте файл конфигурации PHP.INI и добавьте эти строки

[Suhosin]

suhosin.post.max_vars = 20000

suhosin.request.max_vars = 20000

Я подозреваю, что проблема связана с количеством данных, поступающих с вашим запросом POST. Нет установки, которая ограничивает количество $ _POST vars, которое может быть установлено. Однако для данных POST существует ограничение на память, которое по умолчанию составляет 8 МБ.

В файле php.ini попробуйте изменить значение post_max_size и установите его на более высокое значение. Не забудьте перезапустить apache после внесения изменений.