그런 질문이었군요.
php에서 임시로 저장한 파일을 원하는 경로로
저장한다면, 그 임시파일의 저장경로와 파일명을
궂이 알 필요는 없겠죠. input에서 지정해준 파일명 변수가
있을 테니, 그걸 사용해서 바로 저장해줄 경로로 보내면 되겠습니다.
copy도 좋은 방법이구요, 단, 임시저장된 파일이 copy 후에도
계속 남아있을 수 있기 때문에(? 확인은 못해봤음),
copy명령보단 mv가 낫지 않을까요? 라고 생각을 해 봤습니다.
exec("mv $userfile_name /var/mysql/data");
// 여기서 var/mysql/data는 파일을 저장할 경로
// $userfile_name은 input에서 받아들인 파일의 변수명 "userfile"의 파일명 변수
// 참고로, input의 파일명 뒤에 _name을 붙이면 그 파일의 변수명이 되는 거 맞죠?
: 먼저 입력 양식 폼 파일(upload.html) 과 처리 파일(upload.php)
: 두 개의 파일이 존재하겠죠...
: 파일명은 제 임의대로 붙인것이니 다를 수도 있겠지만...
:
: 먼저 upload.html 내부에서
: <form name="upload_form" method="post" action="upload.php"
: enctype="multipart/form-data">
: ...
: <input type="file" name="userfile">
: ...
: </form>
:
: 여기서 enctype="multipart/form-data" 가 빠지면 업로드가 안되져...
:
: 다음으로 upload.php 에서는
: $userfile : 임시파일. 일반적으로 /tmp 에 저장됨
: $userfile_name : 실제 파일명
: $userfile_size : 파일의 크기
: $userfile_type : 파일의 MIME type
:
: 이 세가지는 자동 생성됩니다...
: 그렇다면 임시파일을 실제로 저장하기 위해서
:
: copy($userfile, "./data/$userfile_name"); //경로는 바뀔 수 있겠죠...
: unlink($userfile); //임시 파일 삭제
:
: 당연히 실제 파일이 저장될 디렉토리는
: nobody 에게두 쓰기 권한이 있어야 겠구여...
:
: 원하시던 답변이 이게 맞는지...
:
: --
: 삽질은 계속되어야 한다...