본문 바로가기
Coding/Etc

PHP 파일업로드

by Hide­ 2017. 1. 15.
반응형

[ upload.php ]


<html>

<body>

<form action="upload_ok.php" method="post" enctype="multipart/form-data" />

<input type="hidden" name="MAX_FILE_SIZE" value="1000000">

<input type="file" name="upfile" name="upfile">

<input type="submit" value="UPLOAD">

</form>

</body>

</html>




[ upload_ok.php ]

<?php
//ini_set("display_errors", 1); // 에러 출력
//error_reporting(E_ALL); // 에러 출력
$upfile = "./upload/".$_FILES['upfile']['name']; // 경로 설정
if(!is_uploaded_file($_FILES['upfile']['tmp_name'])) { // 파일이 존재하지 않는다면
if(move_uploaded_file($_FILES['upfile']['tmp_name'], $upfile)) { // 업로드
echo "UPLOAD SUCCESS";
} else {
echo "ERROR";
}
} else {
echo "FILE EXISTS";
}
print_r($_FILES); // $_FILES 에 관해 출력
?>



[ 참고 ]


bool is_uploaded_file(string filename)

파일이 HTTP 프르토콜의 POST방식을 통해 업로드되었는지를 확인한다.


bool move_uploaded_file(string filename, string destination)

업로드 된 파일을 지정한 위치로 옮긴다.


$_FILES["inputname"]["name"] 파일의 실제 이름

$_FILES["inputname"]["type"] 파일의 MIME 타입(ex: "image/gif")

$_FILES["inputname"]["size"] 파일의 크기 (바이트)

$_FILES["inputname"]["tmp_name"] 임시 디렉토리에 전송된 파일의 이름

$_FILES["inputname"]["error"] 파일 업로드와 관련된 에러코드번호