2014-04-30 35 views
2

我已經嘗試了一些不同的建議,包括對uploadify論壇的建議:http://www.uploadify.com/forum/#/discussion/8232/upload-five-html-5-file-type-filter-capability/p1UploadiFive 1.2.2使用「filetype」過濾能力/限制不起作用

但這些似乎並沒有從改變限制用戶文件類型。有任何想法嗎?這是我的代碼如下:

<script type="text/javascript"> 

<?php $timestamp = time();?> 

$(function() { 

    if ($('#fileupload').length > 0) {  

     $('#fileupload').uploadifive({ 

     'auto'    : true, 
     'checkScript'  : '../home/assets/uploadifive/check-exists.php', 
     'formData'   : { 
        'timestamp' : '<?php echo $timestamp;?>', 
        'token'  : '<?php echo md5('unique_salt' . $timestamp);?>' 
          }, 
     //'queueID'   : 'queue', 
     'uploadScript'  : '../home/assets/uploadifive/uploadifive.php', 
     'multi' : false, 
     'removeCompleted' : false, 
      'fileSizeLimit' : '3MB', 
      'uploadLimit' : 1, 
      'buttonText':'Select File', 
      onSelect: function() { 
       $('#btn_submit').attr({disabled: true, value:'Uploading...' }).css("background-color", "#707070"); 
       }, 
      onUploadComplete: function(file,data,reponse) { 
       $('#uploadedfile').val(data); 
       $("#btn_submit").attr({disabled: false, value:'Register' }).css("background-color", "#D4D0C8"); 
       alert('The file ' + file.name + ' was successfully uploaded '); 
     }, 

     // 'fileType'  : 'application/pdf|application/doc|application/docx'  //not 
                       //working. 
     // 'fileType'  : ["gif","jpeg","png"] //not working. 
     // 'fileType'  : 'image/png|image/jpg' //not working. 
     // 'fileType'  : 'image/*' // works but does not restrict user from changing 
             // it something else. 
     // 'fileType': ["image\/jpeg","image\/png"] // works but does not restrict user 
                // from changing it something else.  
     }); 

    } 

}); 

</script> 

回答

1

同樣的問題在這裏。我已經改變'fileType':'image', 它允許整個img文件但不允許其他文件(引發禁止文件類型錯誤),並在我的 PHP我已經添加$ fileTypes = array('jpg','jpeg' ,'gif','png');允許的文件擴展名所以我們可以只過濾jpg gif和png文件。但它會增加上傳文件數uploadify。

+0

這工作就像一個魅力我嘗試了所有的可能性,'image/*','image/png | image/jpg',改變了屬性名稱,沒有任何工作。 –

0

我發現這個答案對一個線程,但其V 1.0。* 我不知道他們有固定的在行1.2.2尚未 更改源JS(jquery.uploadifive-v1.0.js) 283讓這個工作並接受我的fileType數組。

var v = 0; 
          for (var n = 0; n < settings.fileType.length; n++) { 
           if (file.type.indexOf(settings.fileType[n]) > -1) { 
            v += 1; 
           } 
          } 
          if (v < 1) { 
           $data.error('FORBIDDEN_FILE_TYPE', file); 
          } 

我嘗試過傳遞數組以及|分離的文件擴展名仍然不起作用。