次のように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を事前に感謝します