HTML
Javascript
Flash Actionscript
PHP
mySQL
ASP
MS-SQL
Linux
Others
Ziwoo Board
Portfolio
About
Flash Actionscript
작성  2009-10-07 20:47:59   추천: 83   조회: 6561
제목  지우님의 플래시 업로더에 대해서 여쭙습니다.
이름(ID)  전인식 (juninsik)
안녕하세요!
지우님의 플래시 업로더에 대해서 여쭙습니다.
우선, 소스부터 보여드리겠습니다.

일단, write.php에 아래와 같이 작성했습니다.
-------------------------------------------------------------------------------
<script language="JavaScript" type="text/JavaScript" src="./func/uploader/swf_upload.js"></script>
<form name="formName" action="./module/board/skin/<?=$setup[bod_skin]?>/write_proc.php?id=<?=$setup[id]?>" method="post">
<script language="javascript">
    makeSwfMultiUpload(
        movie_id='smu03', //파일폼 고유ID
        flash_width='650', //파일폼 너비 (기본값 400, 권장최소 300)
        list_rows='3', // 파일목록 행 (기본값:3)
        limit_size='30', // 업로드 제한용량 (기본값 10)
        file_type_name='모든파일', // 파일선택창 파일형식명 (예: 그림파일, 엑셀파일, 모든파일 등)
        allow_filetype='*.*', // 파일선택창 파일형식 (예: *.jpg *.jpeg *.gif *.png)
        deny_filetype='*.cgi *.pl', // 업로드 불가형식
        upload_exe='./module/board/skin/<?=$setup[bod_skin]?>/write_proc.php?id=<?=$setup[id]?>' // 업로드 담당프로그램
    );
</script>

<img src="<?=$home_address?>/image/button/btn_c_write.gif" onClick="callSwfUpload('formName');">
</form>
-------------------------------------------------------------------------------

그리고, 실질적으로 업로드한 파일이 저장되는 write_proc.php에는
아래와 같이 작성했습니다.


-------------------------------------------------------------------------------
<script language="JavaScript" type="text/JavaScript" src="../../../../func/uploader/swf_upload.js"></script>
<?
  echo $_GET["browser_id"]."<br>";
  echo $_GET["upload_id"]."<br>";
  $folder_name = "../../../../files/".$_GET["browser_id"];
  if(!is_dir($folder_name)) mkdir($folder_name, 0777);
  chmod($folder_name, 0777);
  move_uploaded_file($_FILES['Filedata']['tmp_name'], $folder_name."/".$_GET["upload_id"]."__swfupload__".iconv("utf-8","euc-kr",$_FILES['Filedata']['name']));
?>

<?
    while(list($key,$value)= each($_POST)){
        if(is_array($value)){
            while(list($key1,$value1)=each($value)){
             echo "\$_POST['".$key."'][".$key1."] = \"". $value1."\"<br>\n";
            }
        }else{
            echo "\$_POST['".$key."'] = \"". $value."\"<br>\n";
        }
    }
 
    echo "<br>";
 
    $folder_name = "../../../../files/".session_id();
    if(is_dir($folder_name)) {
        $dir_obj=opendir($folder_name);
        while(($file_str = readdir($dir_obj))!==false){
            if($file_str!="." && $file_str!=".."){
                $split_str = explode("__swfupload__",$file_str);
                $_FILES[$split_str[0]]['tmp_name'][] = $file_str;
                $_FILES[$split_str[0]]['name'][] = $split_str[1];
                $_FILES[$split_str[0]]['size'][] =  filesize($folder_name."/".$file_str);
            }
        }
        closedir($dir_obj);
    }
 
    for($i=0;$i<count($_FILES['smu03']['tmp_name']);$i++){
        echo "\$_FILES['smu03']['name'][$i]: ".$_FILES['smu03']['name'][$i]."<br>";
        echo "\$_FILES['smu03']['tmp_name'][$i]: ".$_FILES['smu03']['tmp_name'][$i]."<br>";
        echo "\$_FILES['smu03']['size'][$i]: ".$_FILES['smu03']['size'][$i]."<br><br>";
    }
?>
-------------------------------------------------------------------------------

위와 같이 소스를 만들었는데...
파일이 업로드가 되지 않네요;;;
도무지 어디를 어떻게 손을 대야할지 모르겠습니다... ㅜ.ㅜㅋ
도움을 부탁드립니다.




덧글 (5)
지우(ziwoo) 2009-10-07 22:25:37
별건 아니지만 우선 write_proc.php의 첫줄에 script 태그는 필요 없습니다.
그리고 $folder_name 변수명은 중복이므로 다른 변수명으로 바꾸세요.

write.php에서 실질적으로 파일을 업로드 하는 부분은 플래시 업로드 뿐이고
그 고유이름은 "smu03"이군요.
그런데 받아주는 페이지인 write_proc.php 에 보면 실질적으로 파일을 저장하는 부분이
move_uploaded_file($_FILES['Filedata']['tmp_name'], $folder_name."/".$_GET["upload_id"]."__swfupload__".iconv("utf-8","euc-kr",$_FILES['Filedata']['name']));
라고 되어있네요.

for($i=0;$i<count($_FILES['smu03']['tmp_name']);$i++){
  echo "\$_FILES['smu03']['name'][$i]: ".$_FILES['smu03']['name'][$i]."<br>";
  echo "\$_FILES['smu03']['tmp_name'][$i]: ".$_FILES['smu03']['tmp_name'][$i]."<br>";
  echo "\$_FILES['smu03']['size'][$i]: ".$_FILES['smu03']['size'][$i]."<br><br>";
}
위 코드는 실제 업로드된 피일을 어떻게 이용할지 화면에 보여주기만 하는 코드입니다.
따라서 위 코드는 실제로는 필요 없는 부분이므로 이부분을 아래처럼 바꿔보시기 바랍니다.

for($i=0;$i<count($_FILES['smu03']['tmp_name']);$i++){
    move_uploaded_file($folder_name."/".$_FILES['smu03']['tmp_name'][$i], $새로운folder_name."/".$_GET["upload_id"]."__swfupload__".iconv("utf-8","euc-kr",$_FILES['smu03']['name'][$i]));
}

다른문제가 또 있는는 모르지만, 일단 눈에보이는 문제점만 말씀드렸습니다.
부디 잘 되시길 바랍니다.
전인식(juninsik) 2009-10-07 23:47:07
정말 가뭄에 단비 같은 답변에 감사드립니다.
말씀하신 부분을 참조해서 write.php파일은 수정을 하지 않구요;
write_proc.php파일만 필요없는 부분을 모두 지워 버리고 아래와 같이 정리했는데...
아직도 파일이 정상적으로 업로드가 되질 않네요 ... ㅜ.ㅜㅋ


$folder_name = "../../../../upload/board/".$id."/upload";
    for($i=0;$i<count($_FILES['smu03']['tmp_name']);$i++){
    move_uploaded_file($folder_name."/".$_FILES['smu03']['tmp_name'][$i], $folder_name."/".$_GET["upload_id"]."__swfupload__".iconv("utf-8","euc-kr",$_FILES['smu03']['name'][$i]));
  }

파일정보가 정확하게 넘어오는 지도 모르겠구요..ㅜ.ㅜㅋ
이일로 몇일간 고생을 하다가 이렇게 제작자분을 귀찮게 해드립니다.
다시 한번 답변을 부탁드립니다.

전인식(juninsik) 2009-10-07 23:50:08
아! 그리고...
echo $_FILES['smu03']['tmp_name'][0];
라고 입력하면 첫번째로 등록된 파일의 파일명이 보여야하는 거 아닌가요;;;
아무쪼록... 고견을 부탁드립니다.^^;;
지우(59.7.1.206) 2009-10-08 10:12:27
<?
$folder_name = "./files/".$_GET["browser_id"];
if(!is_dir($folder_name)) mkdir($folder_name, 0777);
chmod($folder_name, 0777);

move_uploaded_file($_FILES['Filedata']['tmp_name'], $folder_name."/".$_GET["upload_id"]."__swfupload__".iconv("utf-8","euc-kr",$_FILES['Filedata']['name']));
?>

위 코드는
upload.php의 내용인데요.. 이제보니 위 코드를 write_proc.php에 따다 변형해서 붙이셨군요.
upload.php와 write_proc.php를 통합한게 문제 같습니다.
플래시 업로드와 폼의 SUBMIT은 별개이므로 원래대로 분리해서 해보세요.
그리고 $folder_name = "./files/".$_GET["browser_id"];에서의 files 폴더에 접근권한도 확인하시고요.
전인식(juninsik) 2009-10-08 12:57:42
흠... 역시 잘 안되네요...ㅜ.ㅜㅋ
하는데까지 더 혼자 해봐야 겠네요..ㅜ.ㅜㅋ
번호 제목 이름 날짜 추천 조회
중요 플래시8을 이용한 파일업로드(프로그래스..[83]파일 지우 2007-08-21 610 65535
24 플래시업로드 사용시 수정페이지에서 이미.. 이수룡 2010-11-18 52 4577
23 Re: 플래시업로드 사용시 수정페이지에서.. 지우 2010-11-22 61 4662
22 IIS+PHP+MySql 환경에서 파일업로드 좀 도.. 박순정 2010-11-10 61 3890
21 Re: IIS+PHP+MySql 환경에서 파일업로드 좀.. 지우 2010-11-22 67 3987
20 문의 드립니다.[2] 김용훈 2010-04-28 71 3261
19 JSP 환경에서의 플래시 업로더 질문입니다.[1] 처리 2010-03-09 95 6168
18 친절한 답변 감사합니다~^^ 전병훈 2009-11-12 77 3473
17 플래시 업로더 질문이요... 아무도 답변을..[1] 김재겸 2009-10-30 79 3649
16 Re: 정말 방법이 없는건가요?[9] 최권진 2009-11-03 90 4911
15 플래시 업로더에 대해서 여쭙습니다. 전인식 2009-10-26 87 18375
14 Re: 플래시 업로더에 대해서 여쭙습니다.[3] 지우 2009-10-27 78 7488
13 지우님 플래시 업로드 관해 질문이요. 김재겸 2009-10-17 84 3170
12 플래시8을 이용한 업로드....[1] 최권진 2009-10-12 83 3335
11 지우님의 플래시 업로더에 대해서 여쭙습니..[5] 전인식 2009-10-07 83 6561
10 업로더에 관련해 질문하나 올립니다.[2] 전성환 2009-08-31 76 4997
9 안녕하세요.[1] 박상태 2009-06-01 73 2547
8 파일 업로드에 관하여 질문 좀 할께요...[1] 이진석 2009-05-29 81 2739
7 흑흑[2]파일 박상태 2009-05-08 71 2732
6 답변이 없으시군요.죄송하지만 이걸 테스트..[8] 박상태 2009-05-04 76 3432
[1][2]
제목 내용 이름  
ziwooboard v1.0
Contact Phone Number
Bank Account number
ns1.ziwoo.net (115.160.123.41)
ns2.ziwoo.net (115.160.123.41)
Naver BLOG : http://blog.ziwoo.net
Family Homepage : http://home.ziwoo.net
Copyright ⓒ 2006 By Ziwoo.net All right reserved. Administrator.ziwoonet@naver.com