2011-05-14 23 views
0

나는 모든 것을 얻었지만이 작업을합니다. move_uploaded_file();을 사용할 수 없습니다.파일 업로드 파일

$ups_path = "ups/files"; 
$nfile = $_FILES['nfile']['tmp_name']; 
$cfile = move_uploaded_file($nfile, $ups_path); 

if($cfile){ 
header ('Location: index.php?give=fileuploaded'); 
} else { 
header ('Location: index.php?give=filenotuploaded'); 
} 

항상 이동하지 않는 오류가 반환됩니다.

+0

'$ ups_path'는 아마도 절대 값이어야합니다. – Orbling

+2

* 어떤 오류가 발생합니까? NB, mysql_real_escape_string()은이 시점에서 유용하지 않습니다. 파일 이름에 잘못된 문자는 제거되지 않습니다. –

+0

왜'tmp_name'에 mysql_real_escape_string을 사용하고 있습니까? 그리고 아마 당신은 문자열을 변경하고 있습니다. 이것이 맞는지 확인하십시오. –

답변

1

경우,이 실패합니다. move_uploaded_file은 두 번째 인수가 디렉토리가 아닌 파일 이름이 될 것으로 예상합니다.

+0

감사합니다! 좋은 캐치. '$ ups_path = "ups/files/$ date_ $ filename"; '과 같이 만드는 것을 잊었습니다. 내 스크립트가 지금 완료되었습니다 :) – yanike

0

상대 한 대신 절대 경로를 사용하여 시도 : UPS가/디렉토리를 파일

$ups_path = "/var/www/somewhere/ups/files";