$_FILES와 업로드 - $HTTP_POST_FILES [deprecated], bool move_uploaded_file ( string $filename , string $destination )
2014. 1. 16. 21:32
- <?php
- // form 파일 업로드(오직 method=post)
- // http://localhost/testphp/11.php
- // 아래 HTML tag에서 48라인인 method를 post형식으로 보낸 파라미터를 받습니다.
- // form안에 각 태그의 name으로 $_POST['name']으로 넘어옵니다.
- // $_FILES방식으로 받은 값 출력(오직 method=post)
- echo "<b>\$_FILES['form name'][deprecated]</b><br>\n";
- echo "파일 이름 : ".$_FILES['test']['name']."<br>\n";
- echo "파일 크기 : ".$_FILES['test']['size']."<br>\n";
- echo "파일 타입 : ".$_FILES['test']['type']."<br>\n";
- echo "파일 에러 : ".$_FILES['test']['error']."<br>\n";
- echo "임시 파일 : ".$_FILES['test']['tmp_name']."<br>\n";
- /* $_FILES['test']['error'] 코드값
- 파일 전송 완료됨 - UPLOAD_ERR_OK: 0
- 파일 php.ini max 큼 - UPLOAD_ERR_INI_SIZE: 1
- 파일 MAX_FILE_SIZE 큼 - UPLOAD_ERR_FORM_SIZE: 2
- 파일 전송 일부만 - UPLOAD_ERR_PARTIAL: 3
- 파일 전송 안되음 - UPLOAD_ERR_NO_FILE: 4
- 임시 폴더가 없음 - UPLOAD_ERR_NO_TMP_DIR: 6
- 디스크 파일 쓰기 실패 - UPLOAD_ERR_CANT_WRITE: 7
- 확장 파일 업로드 중지 - UPLOAD_ERR_EXTENSION: 8
- */
- // 파일 위치와 파일명 설정
- $now_uploadfile = getcwd()."/".$_FILES['test']['name'];
- // 업로드 처리
- if(move_uploaded_file($_FILES['test']['tmp_name'], $now_uploadfile)){
- echo getcwd()."경로에 파일을 업로드 하였습니다.<br>\n";
- }
- else if(!$_FILES['test']['error']){
- echo getcwd()."경로에 파일을 업로드 준비.<br>\n";
- }
- else{
- echo getcwd()."경로에 파일을 업로드 실패.<br>\n";
- }
- $HTML_tag1 =
- '<HTML>
- <HEAD>
- <script type="text/javascript" language="javascript">
- <!--
- function getgo(){
- location.href = "'.$_SERVER["PHP_SELF"].'";
- }
- //-->
- </script>
- </HEAD>
- <BODY>
- <form method="post" enctype="multipart/form-data" action="'.$_SERVER["PHP_SELF"].'">
- <input type="file" name="test" title="test"/>
- <input type="hidden" name="MAX_FILE_SIZE" value="20000"/>
- <input type="submit" value="전송"/>
- </form>
- <input type="button" value="초기화" onclick="getgo();">
- </BODY>
- </HTML>
- ';
- echo $HTML_tag1;
- ?>
--------------------------------------------------------------------------------------------
9.~13. 라인
파일 이름 : $_FILES['test']['name']
파일 크기 : $_FILES['test']['size']
파일 타입 : $_FILES['test']['type']
파일 에러 : $_FILES['test']['error']
임시 파일 : $_FILES['test']['tmp_name']
파일 에러 코드는 다음과 같습니다.
파일 전송 완료됨 - UPLOAD_ERR_OK: 0
파일 php.ini max 큼 - UPLOAD_ERR_INI_SIZE: 1
파일 MAX_FILE_SIZE 큼 - UPLOAD_ERR_FORM_SIZE: 2 [50. 라인]
파일 전송 일부만 - UPLOAD_ERR_PARTIAL: 3
파일 전송 안되음 - UPLOAD_ERR_NO_FILE: 4
임시 폴더가 없음 - UPLOAD_ERR_NO_TMP_DIR: 6
디스크 파일 쓰기 실패 - UPLOAD_ERR_CANT_WRITE: 7
확장 파일 업로드 중지 - UPLOAD_ERR_EXTENSION: 8
bool move_uploaded_file ( string $filename , string $destination )
27. 라인
POST방식으로 업로드 된 $filename를 $destination 경로로 이동시킵니다.
'php5 > 기본단계2문법' 카테고리의 다른 글
$_COOKIE 기능 - bool setcookie ( string $name ) (0) | 2014.01.17 |
---|---|
다운로드 - header기능 사용 (0) | 2014.01.16 |
$_REQUEST[웹서버요청방식] (0) | 2014.01.16 |
$_POST[웹서버요청방식] - $HTTP_POST_VARS [deprecated] (0) | 2014.01.16 |
$_GET[웹서버요청방식] - $HTTP_GET_VARS [deprecated] (0) | 2014.01.16 |