2014-10-14 4 views
0

У меня есть большой POST, вносимый в PHP, который может быть любого размера, как это задачи на приложение по управлению проектами ...PHP POST теряет данные

Вот скриншот страницы редактирования задач, которая теперь отключая данные при сохранении

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

enter image description here

+2

AJAX и обновлять отдельные строки отдельно. –

+2

превосходит max_input_vars? Если это так, вы можете отправить все с помощью javascript в одну переменную –

+0

Что такое 'post_max_size',' max_input_vars' и 'max_input_nesting_level'; вы используете какие-либо специальные модули, такие как suhosin? –

ответ

0

Любой размер? Сомнительно. Вы всегда можете установить разумный предел ... даже если этот предел составляет 2 ГБ.

В любом случае, скорее всего, это не тот необработанный размер, который вас кусает, но де-сериализация и размеры ограничены. Попробуйте POST в формате, таком как JSON, и расшифруйте его самостоятельно, а не занимайтесь собственной обработкой PHP по телу POST.

+0

. Я не совсем понимаю, что вы имеете в виду, не могли бы вы показать небольшая демонстрация того, как это может работать? Также на этой странице есть кнопка для POST данных, таких как обычная форма, и еще одна кнопка, которая сохраняет с помощью AJAX и удерживает вас на странице – JasonDavis

+0

@jasondavis Jack указывает вам в правильном направлении с 'max_input_vars' и' max_input_nesting_level'. Если вы отправляете сообщения через AJAX, просто разместите объект JSON (не могу объяснить, как конкретно, поскольку я не знаю, что вы делаете на стороне клиента), но оттуда вы можете читать из 'php: // input 'и используйте' json_decode() '. http://stackoverflow.com/a/18867369/362536 – Brad

+0

Установка 'php_value max_input_vars 3000' исправила мою проблему! Это здорово, но поскольку это модуль для выпуска, я не могу установить этот файл для всех, к сожалению, похоже, вы не можете установить это из среды выполнения с помощью PHP – JasonDavis

Смежные вопросы