jquery example Uploadifive 동적으로 입력 변수 게시




jquery file upload 9.22 0 (2)

uplodifive 포럼에서 오해의 소지가있는 해결책으로 수 시간 동안 실험을 해본 결과, 이것이 해결책입니다.

HTML 앵커 태그에서

<input id="file_upload" name="file_upload" type="file" multiple="true">
<a style="position: relative; top: 8px;" href="javascript:$('#file_upload').uploadifive('upload')">Upload Files</a>

앵커 태그를 다음으로 변경하십시오.

<a style="position: relative; top: 8px;" href="javascript:uploadFiles();">Upload Files</a>

초기 함수 호출에서 formData 설정을 완전히 제거하면 다음과 같이 보입니다.

$(function()
{
    $('#file_upload').uploadifive(
    {
        'auto'               : false,
        'dnd'                : true,
        'checkScript'        : 'check-exists.php',
        'queueID'            : 'queue',
        'uploadScript'       : 'upload.php',
        'onUploadComplete'   : function(file, data) {console.log(data);}
    });
});

이 함수를 추가하는 것보다 :

   function uploadFiles()
   {
      $('#file_upload').data('uploadifive').settings.formData =
      {
         'timestamp' : '<?php echo $timestamp;?>',
         'token'     : '<?php echo md5('unique_salt' . $timestamp);?>',
         'MyNumber'  : $('#MyInputVariable').val()
      },
      $('#file_upload').uploadifive('upload');
   }

그리고 다른 변수를 추가해야합니다. 이제 귀하의 입력 변수가 업로드시 게시됩니다.

아래의 문제는 함수가 시작될 때 MyInputVariable 이 비어 있다는 것입니다.

<?php $timestamp = time();?>
$(function () {
    $('#file_upload').uploadifive({
        'auto': false,
        'dnd': true,
        'checkScript': 'check-exists.php',
        'formData': {
            'timestamp': '<?php echo $timestamp;?>',
            'token': '<?php echo md5('unique_salt' . $timestamp);?>',
            'MyNumber': $('#MyInputVariable').val(),
        },
        'queueID': 'queue',
        'uploadScript': 'upload.php',
        'onUploadComplete': function(file, data) {console.log(data);}
    });
});

onUpload , onUploadComplete , onUploadFile 또는 formData 를 업데이트 할 수있는 방법이 있어야합니다.하지만 어떻게해야 할 것 인가에 대한 손실이 있습니다.

업로드 할 수는 없으며 업로드 할 수 없습니다. 기능 / 방법은 크게 다르며 솔루션은 두 가지 모두에 적용되지 않을 수도 있습니다.


Answer #1

나는 이것이 가장 좋은 anwser다고 생각한다.

uploadifive로 동적 변수를 제출하는 방법

이것을 대체하십시오 :

'formData': {
        'timestamp': '<?php echo $timestamp;?>',
        'token': '<?php echo md5('unique_salt' . $timestamp);?>',
        'MyNumber': $('#MyInputVariable').val(),
    },

이것에 의해서:

'onUpload' : function(){
$('#file_upload').data('uploadifive').settings.formData = {
        'timestamp': '<?php echo $timestamp;?>',
        'token': '<?php echo md5('unique_salt' . $timestamp);?>',
        'MyNumber': $('#MyInputVariable').val(),
}},

이것은 전체 코드입니다.

<?php $timestamp = time();?>
$(function () {
    $('#file_upload').uploadifive({
        'auto': false,
        'dnd': true,
        'checkScript': 'check-exists.php',
        'onUpload' : function(){
                $('#file_upload').data('uploadifive').settings.formData = {
                        'timestamp': '<?php echo $timestamp;?>',
                        'token': '<?php echo md5('unique_salt' . $timestamp);?>',
                        'MyNumber': $('#MyInputVariable').val(),
                            }},
        'queueID': 'queue',
        'uploadScript': 'upload.php',
        'onUploadComplete': function(file, data) {console.log(data);}
    });
});




uploadifive