배열형으로 만든 폼데이터가 일정수를 넘어가면 일부가 없어지는 현상이 일어날 수 있음.

PHP 5.3.9 부터 도입된 max_input_vars라는 설정때문인데,

여기 설정된 값을 넘어서는 폼데이터가 들어올 경우 나머지는 유실됨.


예를 들어 max_input_vars는 기본값이 1000인데 POST 파라메터가 배열형으로 $_POST['key_name'][] 이렇게 생긴게 1000개 이상 들어오면 그 이후로는 없어진다는 이야기.


max_input_vars는 PHP_INI_PERDIR 속성의 설정값이므로 ini_set()으로는 변경할 수 없고,

php.ini나 .htaccess, httpd.conf 등 설정파일에서만 변경이 가능함.


해결책은 php.ini 에서 저 값을 많이 늘여주거나,

배열형으로 넘기는 폼데이터를 하나의 문자열로 합친 후 받을 때 다시 풀어내는 수 밖에 없음.



[참조]

http://www.php.net/manual/en/info.configuration.php#ini.max-input-vars












Posted by bloodguy
,