묻고답하기

아래소스는 사진 업로드시 디비에 저장 처리부분입니다.
5가지의 확장자 파일만 가능하게 하고 저장 디렉토리는 member_images로 하였습니다.
그리고 저장되는 업로드 사진파일은 회원아이디와 유닉스타임을 기초로 하였습니다.
즉 user_id+time()이런식으로 된 것이죠.
만약 아이디가 test이고 time()이 유닉스타임으로 date("mdhi",time())
저장되는 업로드 확장자 파일은 "test이달오늘분시.확장자" 이런식으로 저장이 되게 하려고 합니다.

아래 소스에 문제점이 있는지 봐주세요.


        if($HTTP_POST_FILES[picture]) {
                $picture = $HTTP_POST_FILES[picture][tmp_name];
                $picture_name = $HTTP_POST_FILES[picture][name];
                $picture_type = $HTTP_POST_FILES[picture][type];
                $picture_size = $HTTP_POST_FILES[picture][size];
        }

        if($picture_name) {
                        if(!is_dir("./member_images/")) {
                        exec("mkdir ./member_images");
                        exec("chmod 707 ./member_images");
                        }
                if(!is_uploaded_file($picture)) Error('<script>// alert("정상적으로 업로드 하십시요.");history.go(-1);</script>');
                if(!eregi(".gif",$picture_name)&&!eregi(".jpg",$picture_name)&&!eregi(".png",$picture_name)&&!eregi(".bmp",$picture_name)&&!eregi(".swf",$picture_name)) Error('<script>// alert("gif,jpg,png,bmp,swf만 업로드 가능합니다.");history.go(-1);</script>');
                $size=GetImageSize($picture);
                //if($size[0]>500||$size[1]>500) Error('<script>// alert("업로드 파일은 500*500의 크기만 가능합니다.");history.go(-1);</script>');
                $kind=array("","gif","jpg","png","bmp","swf");
                $n=$size[2];
                $path="member_images/$user_id"_".".date("mdhs",time()).".".$kind[$n];
                        if(!is_dir("./member_images/$path")) {
                        exec("mkdir -p ./member_images/$path");
                        exec("chmod -R 707 ./member_images/$path");
                        }
                if(!@move_uploaded_file($picture,$path)) Error('<script>// alert("사진이 업로드 되지 않았습니다.");history.go(-1);</script>');
                $picture_name=$path;
        }