PHP로 FILE 업로드 하기....... 에 앞서 만들기위해 필요한 개념에 대한 공부를 먼저 하겠습니다. ^^
저는, 생활코딩이라는 사이트에서 공부를 하고 있습니다.
index.php
1 2 3 4 5 6 7 8 9 10 11 12 13 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body>
<input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <input name="userfile" type="file" /> <input type="submit" value="upload" /> </form> </body> </html> | cs |
결과창은 다음과 같습니다.
음...............
파일을 업로드 할때 <form>태그에서 ENCTYPE="multipart/form-data"라는 애트리뷰트를 반드시 써야 합니다.
왜냐면, 그렇게 안하면, 웹서버로 데이터를 넘길때 파일의 경로만 전송되고 파일의 내용이 전송이 되지 않는다고 합니다.
또, mehod를 post로 주는것또한, 중요합니다.
<form>태그의 속성인 method, action, enctype 등은 입력받은 데이터를 어떻게 처리할 것인지 세부적으로 설정하는 데 사용됩니다.
method는 전송 방식
action은 전송 목적지
enctype은 전송되는 데이터 형식
enctype
enctype 속성은 다음과 같습니다.
1. application/www-form-urlencoded
디폴트값으로, enctype을 따로 설정하지 않으면 이 값이 설정됩니다. 폼데이터는 서버로 전송되기 전에 URL-Encode 됩니다.
2. multipart/form-data
파일이나 이미지를 서버로 전송할 경우 이 방식을 사용합니다.
3. text/plain
인코딩을 하지 않은 문자 상태로 전송합니다.
다음 이부분을 봅시다.<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
type="hidden"
- 숨겨진 입력필드를 정의
즉, 화면상에 폼에는 보이지 않지만, 폼을 서버로 전송할 때 함께 전송되는 요소
- 예를 들어, 회원가입 폼에서 가입 경로, 날짜와 같이 굳이 사용자가 입력하지 않아도 알 수 있는 정보들을 서버로 넒길때 사용
<input type="hidden' name="..." value="서버 전송 값"/> 으로 사용됩니다.
이코드의 경우, 사용자가 전송한 파일의 최대 크기를 정하기 위해 사용한다고 합니다.
php.ini의 file_uploads, upload_max_filesize, upload_tmp_dir, post_max_size 지시어를 참고하십시오.
또한 중요하게 알아야 할 것은,
<input type="hidden" name="MAX_FILE_SIZE" value="30000" /> 이
<input name="userfile" type="file" /> 보다 앞에 써있어야 한다는 것 입니다.
'웹(php) > 웹(file)_php' 카테고리의 다른 글
[Project 2]PHP로 FILE 업로드 _view.php(파일의 내용을 볼 수 있는 곳) (0) | 2016.11.08 |
---|---|
[Project 2]PHP로 FILE 업로드_download.php(파일 다운)/delete.php(파일 삭제) (0) | 2016.11.08 |
[Project 2]PHP로 FILE 업로드_index.php(파일 리스트) (0) | 2016.11.08 |
[Project 2]PHP로 FILE 업로드_write.php(파일이 db에 저장되는 것을 처리) (0) | 2016.11.08 |
[Project 2]PHP로 FILE 업로드_ table.php(게시판 작성 양식) (0) | 2016.11.08 |