파일업로드에 관해서
본문
            
            
                        참고로 저는 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
                /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한것이 아닐까 생각되는데요..
도움이 되었기를 ..
 
                    
                    그임시공간에서 copy($file,"$uploaddir");
옮기고자 하는 디렉토리를 해주세요
그리고 임시화일을 unlink($file)을 써서 지워주세요
제가 보기엔 아마 현재 디렉트로리를 unlink한것이 아닐까 생각되는데요..
도움이 되었기를 ..
                답변을 작성하시기 전에 로그인 해주세요.