과정

 

"upload 버튼"을 클릭했을 때,

사용자가 선택한 파일(94.png)이

서버쪽으로 전송이 됩니다,

그 전송되는 과정에서,

 

HTTP프로토콜의 따라서,

이 요청 메시지를 서버쪽으로 전달을 하게 되면,

 

서버는 그것을 받아서,

일련의 처리를 진행하게 됩니다.

 

바로 그것을 담당하는 파일이,

"1.php"파일입니다.

 

 

1.php 파일은 이렇게 생겼습니다.

 

 

 

 

하나하나 설명 하겠습니다. (위에 있는코드)

 

10줄

$_FILES 설명 :

일단, 파일을 서버로 전송을 하게 되면,

전송한 파일의 대한 여러가지 정보들을   "php엔진"이  여러분에게 제공을 하게 되는데,

그 제공하는 방법이 

$_FILES라는 변수 안에다가 업로드된 파일의 정보가 담겨 있습니다.

9줄

$uploaddir 설명 :

"임시디렉토리에 위치하고 있는 업로드된 파일"을

"내가 이동시키려는 파일 디렉토리의 경로"를 지정해줍니다.

 

9줄 

끝에 슬레시가 2개가 들어 갔는데,

윈도우에서는 2개를 적어 주어야 한다.

 

10줄

$uplaodfile 설명 :

"임시디렉터리에 머물고 있는 파일"이 어느 파일 디렉토리에 어느 파일명으로 저장되어야 하는가 입니다.

 

(파일이 저장되어야하는 파일디렉토리가 앞쪽에 나오고요 = $uploaddir )

(그 뒤에는, 업로드된 파일정보를 담고 있는 변수($_FILES)입니다. )

 

그냥 쉽게 말해서,

->

파일이 저장될 디렉토리.파일의이름

12줄

move_uploaded_file 설명 :

첫번째 인자 - 업로드된 파일이 최초로 위치하고 있는 임시디렉토리의 경로 (파일의 경로)

두번째 인자 - 업로드 파일(임시디렉토리에 있는 파일이 최종적으로 위치해야하는 경로의 값) (파일을 이동 시킬 경로)

 

 

* move_uploaded_file() 함수는  true, false를 리턴을 합니다.

18줄

print_r() 설명 :

var_dump()랑 비슷한 명령 입니다

 

 

 

 

 

 

 

중요한 부분? 설명 하겠습니다. (위에 있는코드)

8줄

ini_set() 설명 :

php 설정을 runtime으로 지정하는 것입니다.

runtime이라는 것은 php애플리케이션이 실행되는 시점을 의미합니다.

 

runtime이 아닌것은 php애플리케이션에 대한 기본설정을 여러분들이 

"php.ini"라는 파일을    

셋팅하는 것을 이전 블로그에서 해봤었는데,  거기서 셋팅을 할 수가 있었습니다.

 

그런데 php코드 안에서 셋팅을 무효화해서,

php 실행되고 있는 코드에서만 유효한 설정을 여러분들이 셋팅하는 방법이 바로 

ini_set() 이라는 겁니다.

 

 

기본적으로  php셋팅이  display_errors가 꺼져 있는 상태가 많기 때문에,

display_errors을 키는 명령을 준겁니다.

 

ini_set("display_errors","1");   ->  1은 on이랑 똑같은 거임. 

10줄

 

basename() 설명:

$_FILES['userfile'['name']는 파일의 실제 이름.

 

정확하게 파일이름을 의미하도록 하기 위해서,

basename()이라는 것을 사용한 것입니다.

 

 

 

21줄

 

폴더 위치