파일업로드에 관해서

파일업로드에 관해서

QA

파일업로드에 관해서

본문

참고로 저는 php3.ini파일에서 upload_tmp_dir 이라는 환경변수의 값을
/home/lefter 이라는 저의 홈디렉토리로 변경하여 보았습니다.

그리고 다시 아파치 웹서버를 재 가동시키구요.

그리고 아파치 실행은 nobody로 되기 땜시로, 저의 /home/lefter라는
디렉토리 권한을 테스트 삼아 chmod 777 lefter 로 주니까

파일은 잘 업로드 되었습니다.
업로드 된 파일은 일시적인 디렉토리인 즉 제가 설정해준 /home/lefter라는
디렉토리에 phpxxxx라는 이름으로 저장이 됩니다.

그러나 이 파일은 요청의 처리가 끝나면 자동적으로 사라지므로 만약 나중에
다시 사용해야 한다면 다른 디렉토리나 동일한 디렉토리에 파일명을 주어서
저장을 해야합니다. 그 방법은 아래와 같습니다.

--파일명 upform.htm ----



submit this file:





--파일명 upload.php3 ---

if (copy($userfile,"/tmp/up.txt"))
{
echo(" $userfile

ok");
}
else {
echo("not ok");
}
?>

해보시면 $userfile 이라는 변수명에는 이러한 값들이 들어가 있습니다.
/home/lefter/phplioXWW


여기서 주의해야 할 것은 반드시 저장하려는 디렉토리에는 반드시
nobody가 쓸수 쓸수 있는 권한이 있어야 합니다.

그래서 보통 /tmp 디렉토리가 디폴트로 지정이 되는 거겠지요..

그럼 수고하세요.  

이 질문에 댓글 쓰기 :

답변 1

화일을 올리면 화일은 임시 공간으로 저장이되거든요..
그임시공간에서 copy($file,"$uploaddir");
옮기고자 하는 디렉토리를 해주세요
그리고 임시화일을 unlink($file)을 써서 지워주세요
제가 보기엔 아마 현재 디렉트로리를 unlink한것이 아닐까 생각되는데요..
도움이 되었기를 ..

답변을 작성하시기 전에 로그인 해주세요.
전체 1

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT