본문 바로가기

개발&컴퓨터/PHP

[PHP] POST로 file 배열 데이터 넘길 때, 배열의 20개까지의 데이터만 넘어가는 문제 해결법.

반응형

파일 업로드를 위해 파일 배열 값을 post로 넘길 때.. 

파일 배열 값 <input type="file" .. name="attFiles[]"> (<- 20개 이상의 배열로 이루어졌다고 가정.)

 다음과 같이 데이터 넘김.

<form ~~~ method=post" enctype="multipart/form-data">

이렇게 넘어온 파일 배열 데이터 값을 열어보면 20개(배열인자19번)까지만 값이 넘어 온것을 알 수 있다. 20번이후의 값을 찍으면 값이 없다.. 배열 갯수를 세어보아도 20이라고만 나온다.

 enctype="multipart/form-data" 부분이 문제인데, 이 옵션을 해제하면 값은 넘어오지만, 실제 파일은 업로드 안되는 문제가 발생한다.

 

[해결법]

---------------------------------------------------------------------------

PHP 환경 설정 파일 php.ini 을 열어서 다음 옵션을 추가한다.

max_file_uploads = (동시 업로드 허용 최대 파일갯수)

 

기본적으로 max_file_uploads는  없는 옵션값으로 파일 내용을 검색해도 검색되지 않는다. 그러므로 직접 추가하여야 한다.

추가하는 위치는 상관없다.

php 내부적으로 이 값이 20으로 설정되어 있어서 발생되는 문제이다.

 

ex.)

max_file_uploads = 50

// 50개까지의 파일을 동시에 업로드하도록 허용한다.

반응형

'개발&컴퓨터 > PHP' 카테고리의 다른 글

PHP에서 한글 파일 이미지 깨짐현상 해결 방법  (0) 2014.08.29