본문 바로가기
웹프로그램

PHP registart 값 off 후 파일 업로드

by 세이박스 2008. 10. 18.
반응형

@extract($HTTP_SESSION_VARS);
@extract($HTTP_COOKIE_VARS);
@extract($HTTP_SERVER_VARS);
@extract($HTTP_GET_VARS);
@extract($HTTP_POST_VARS);
@extract($HTTP_ENV_VARS);

if($_FILES['file']['name']){
$AllowExt='/\.alz|\.txt|\.psd|\.xls|\.gz|\.zip|\.bmp|\.doc|\.exe|\.dat|\.gif|\.htm?|\.hwp|\.pdf|\.ppt|\.rar|\.jp?g|\.tif|\.png/i';
$rename=date("YmdHis");

$saveDir="$DOCUMENT_ROOT/report_files/".date("Ym")."/";

if(!is_dir($saveDir)) {
$oldumask = umask(0);
mkdir($saveDir, 0777); // or even 01777 so you get the sticky bit set
umask($oldumask);

//mkdir($saveDir, 0777);
}

if(!preg_match($AllowExt, $_FILES['file']['name'],$ext)) //확장자 비교
AlertBack('업로드 금지 파일입니다.');

$filename=$saveDir.$rename.$ext[0];

if(!move_uploaded_file($_FILES['file']['tmp_name'],$filename))
AlertBack('파일 업로드를 실패했습니다.');


$filerename="http://".$SERVER_ADDR ."/report_files/".date("Ym")."/".basename($filename);
}

반응형