상세 컨텐츠

본문 제목

blueimp jQuery FileUpload 파일업로드 인자값전달하기 formdata

IT공부방/jQuery, ajax, java

by 동해둘리 2016. 10. 1. 18:08

본문

반응형

 

 

 

blueimp jQuery FileUpload 를 사용하여 파일업로드를 할 때에, 인자값을 전달할 수 있습니다.

 

바로 아래의 formData 를 이용하는 방법인데요

 

$('#fileupload').fileupload({

url: url,

autoUpload: true,

dataType: 'json',

done: function (e, data) {

$.each(data.result.files, function (index, file) {

//$('<p/>').text(file.name).appendTo('#files');

});

},

   formData: {sUserVAlue: 'NO'} 

}).on('fileuploaddone', function (e, data) {

$.each(data.result.files, function (index, file) {

if (file.url) {

var link = $('<a>')

.attr('target', '_blank')

.prop('href', file.url);

//$(data.context.children()[index]).wrap(link);

} else if (file.error) {

var error = $('<span class="text-danger"/>').text(file.error);

$(data.context.children()[index])

.append('<br>')

.append(error);

}

});

}).prop('disabled', !$.support.fileInput)

.parent().addClass($.support.fileInput ? undefined : 'disabled');

 

 

 

fileupload 에서 위와같이 코딩을 한 후, UploadHandler.php 에서는 다음과 같이 받을 수 있습니다

저의 경우는 user_value 값에 따라서 파일명을 임의로 지정하는 용도로 사용했습니다.

 

 

    protected function get_file_name($file_path, $name, $size, $type, $error, $index, $content_range) {

 

        $name = $this->trim_file_name($file_path, $name, $size, $type, $error,  $index, $content_range);

 

$user_value = $_REQUEST['sUserValue'];

 

if ( $user_value == "NO" )

{

$managed_file_name = "my_file_name.mp3";

return $this -> trim_file_name($file_path, $managed_file_name , $size, $type, $error, $index, $content_range);

}

else

{

return $this -> trim_file_name($file_path, $name, $size, $type, $error, $index, $content_range);

}

    }

 
 
 
이때, 인자값을 여러개 전달하려면 아래와 같이 코딩하면 됩니다

formData: { name: '홍길동', age: nAge, sex : '남' },
 
 

 

반응형

관련글 더보기

댓글 영역