2012-03-24 3 views
0

멀티 업로드 플래시 업 로더를 사용하여 게시물의 이미지를 저장하는 백엔드 관리 솔루션을 개발하고 싶습니다. 나는 그런 종류의 업 로더를 의미합니다. 브라우징을 클릭하면 열기 대화 상자에서 CTRL + LEFT MOUSE CLICK를 사용하여 여러 파일을 볼 수 있습니다.플래시 업 로더 및 PHP를 사용하여 파일을 멀티 업로드하고 mysql 데이터베이스에 저장

모든 새로운 이미지를 데이터베이스에 저장하고 싶습니다. , 내 말은 절약 내 테이블의 모든 항목 (이미지)에 대한 새 행을 만드는라는 이미지 :

1.id (automatically increasing) 
2.file_name 
3.user_who_uploaded_that_book 

내가 파일의 수를 제한하는 것이 싶습니다 수있는 사용자 uplaod (예 : 최대 20 개 개의 파일을) 어딘가 설정 파일에.

+1

한 번에 한 가지 질문 만하십시오. 또한 코드를 추가하십시오. 스크립트를 찾는 것은이 사이트의 범위 밖에 있으므로, 그 부분을 삭제했습니다. – hakre

+0

코드에 관한 한 그 조언이 필요합니다. 컨트롤러 및 모델 부분에서 멀티 업로드를 처리하는 방법을 모르겠다. 아마도 자습서에 대한 링크만으로 충분할 것입니다. – Derfder

+1

이 도움말은 도움이 될 것입니다. http://help.adobe.com/ko_KR/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7cf8.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7ce9 –

답변

2

개인적으로 나는 복수 파일 업로드를 설정하는 방법에 대한 좋은 예제 세트가 포함 된 Plupload의 팬입니다. 백엔드 설정을위한 예제 인 upload.php 스크립트도 포함되어 있습니다.

HTML4는 여러 파일 선택을 지원하지 않으므로 HTML5 또는 확장 프로그램 (플래시 또는 실버 라이트)에 의존해야합니다. Plupload는 위의 모든 것을 지원하기 때문에 어떤 다리 작업을 줄일 수 있습니다.

+0

Plupload는 내가 사용한 최고의 멀티 파일 업 로더입니다. '+ 1up' – ToddBFisher

0

난 당신이 여기에 2 개 기본적인 질문을 가지고 생각 :

  1. 어떻게 플래시를 통해 업로드 할 로컬 파일을 선택하려면?
  2. 여러 파일을 POST로 서버에 보내는 방법은 무엇입니까?

# 1의 경우 flash.net.FileReference을 사용해야합니다.

For # 2 'Flash'에는 'Multipart'로더가 내장되어 있지 않습니다. 내가 찾은 최고의 사람은 Eugene라는이 천재 개발자 : http://blog.inspirit.ru/?p=198입니다. 개인적으로 IE8의 onComplete 핸들러와 관련된 몇 가지 문제를 가지고 있었지만 위의 코드는 훌륭했습니다. & IE9. 유진이 아니라 IE의 잘못이라고 확신합니다. 그래서 같이이 HTTPStatusEvent 이벤트에 대한이 주위에 내 듣기 일 :

var ml:MultipartURLLoader = new MultipartURLLoader();   
ml.addEventListener(HTTPStatusEvent.HTTP_STATUS, onHTTPStatusEvent); 
ml.addVariable('Content-Type', "image/png"); 
ml.addFile(pngStream, filename, "file", "image/png"); 
ml.load('http://...'); 
function onHTTPStatusEvent(event: HTTPStatusEvent){   
    if(stat == 0 || (stat >= 200 && stat < 205)){ 
     //upload success 
    }else{ 
     //some kinda error 
    } 
} 

(이 여러 addFiles (_)와 함께 작동한다)

나는 또한 표준 이벤트를 듣고있어 :

ml.addEventListener(Event.COMPLETE, uploadComplete); 
ml.addEventListener(ProgressEvent.PROGRESS, uploadProgress); 

하지만 PROGRESS를 전혀 작동시키지 못했고 IE에서 COMPLETE이 실행되지 않습니다 ... IE에서 작동하는 다른 방법을 아는 사람이 있습니까? Eugene의 코드는 지금 저에게 효과적입니다. 그러나 나는 "업로드 중 ..."진행률 표시 줄을 그대로 추가 할 수 있다고 생각하지 않습니다 ... 멋진 코드 일 것입니다.

관련 문제