4

次のようにuploadifive(FlashベースのuploadifyではなくHTML5バージョン)を使用しています:

$('#file_upload').uploadifive({ //setup uploadify
    'auto'             : false,
    'removeCompleted'  : true,
    'checkScript'    : 'check-exists.php',
    'formData'         : {
                              'timestamp' : '<?php echo $timestamp;?>',
                              'token'     : '<?php echo md5('unique_salt' . $timestamp);?>'
                         },
    'queueID'          : 'queue',
    'uploader'         : 'uploadifive.php',
    'onUploadFile'     : function(file) {
                            //alert('The file ' + file.name + ' is being uploaded.');
                         },
    'onCheck'          : function(file, exists) {
                           //alert ('onCheck: ' + file.name + '/' + exists);
                         },
    'onUploadComplete'  : function(file, data) { 
                          //alert (file.name + ': ' + data); 
                         }
});

この単純なフォームでは:

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

空のフォルダに 1 つまたは 2 つのファイルをロードすると、すべて正常に動作します。
3 つ以上ロードすると、check_info.php への可変回数の呼び出しが繰り返されます。たとえば、空のフォルダーに 5 つのファイルをアップロードすると、firebug によると、check_info への呼び出しが 15 回あります。
ファイル 1 の場合は 1、0 を返す (つまり、ファイルが存在しない)
ファイル 2 の場合は 2、どちらも 0 を返す
ファイル 3 の場合は 3、すべて
が 0 を返す ファイル 4 の場合は 4、1 は 0 を返し、3 は 1 を返す (つまり、ファイルが存在する)
5 ファイルの場合は 5 5、2 リターン 0、3 リターン 1
0 の複数のリターンは (非常に非効率的ですが) ユーザーには見えないので問題ありませんが、1 の 6 つのリターンはそれぞれ警告メッセージを生成します。応答。
なぜこれが起こるのか分かりません。uploadifive コードを見てきましたが、jQuery に関する私の限られた知識をはるかに超えています。
アドバイス/提案/治療法/その他
のTxを事前に感謝します

4

1 に答える 1