2012-01-02 3 views
2

С нескольких дней назад у нас проблема в интернет-магазине. (Базы Gambio на xtC)

У нас есть формула с более чем 3000 текстовыми полями. Около трети из них работают правильно; остальное - пустое, пустое.

Кажется, что $ _POST заполнено правильно, но на сервере приложение получает уменьшенный массив.

Я тестировал его на разных компьютерах, с разными браузерами, с различным содержанием: => всегда одно и то же.

Server: Linux infong 2.4 #1 SMP Mon Oct 10 09:34:36 UTC 2011 i686 GNU/Linux 

PHP Version 5.2.17 (сборка 12-29-2011)

post_max_size 8 МБ.

Проблемы были признаны 12-30-2011, поэтому они могут быть связаны с новой сборкой на сервере.

Есть ли идеи относительно этой проблемы?

+9

3000 текстовых полей? Мне плохо, когда кто-то должен заполнить их ...: s – Svish

+0

Вы уверены, что он полностью заполнен? Вы можете проверить это с помощью TamperData (Firefox Addon). Что говорит print_r ($ _ POST)? Любые изменения в вашем четвертом текстовом поле и каково его значение/содержание? – sascha

+4

У вас установлен патч Suhosin? Он может ограничить количество ключей, которое может содержать $ _POST. –

ответ

1

Проблемы были признаны 12-30-2011, поэтому они могут быть связаны с новой сборкой на сервере.

Если вы используете PHP версию, предоставленный дистрибутивом Linux, это очень вероятно, что они портированный this patch to PHP 5.3 and 5.4, предназначенный для смягчения possible attack vector, влияющего PHP и множество других языков и библиотек.

Если это так, попробуйте сбросить phpinfo() и ищите max_input_vars. Если он есть, вы можете установить его в php.ini на большее число, как вы считаете нужным. Если вы этого не видите, вполне вероятно, что вы не получили этот точный патч, и ваш номер был жестко закодирован.