2017-01-23 16 views
1

我需要上傳多個文件,我使用materializecss,和它給你上傳多個文件中的一個輸入的選項:多個文件輸入兌現

<div class="row"> 
    <form class="col s12"> 
     <div class="file-field input-field"> 
      <div class="btn"> 
       <span>Browse</span> 
       <input type="file" multiple> 
      </div> 
      <div class="file-path-wrapper"> 
       <input type="text" name="pictures" class="file-path validate" type="text" placeholder="Upload multiple files"> 
      </div> 
     </div>  
    </form> 
</div> 

materialize.js確實具有以下這樣的:

$(document).on('change', '.file-field input[type="file"]', function() { 
    var file_field = $(this).closest('.file-field'); 
    var path_input = file_field.find('input.file-path'); 
    var files  = $(this)[0].files;  
    var file_names = []; 
    for (var i = 0; i < files.length; i++) { 
     file_names.push(files[i].name); 
    } 
    path_input.val(file_names.join(", ")); 
    path_input.trigger('change'); 
}); 

因此,通過$_POST我只能得到我要上傳的文件的名稱。我需要文件的完整路徑將它們上傳到我的服務器中。

我會很感激任何幫助。

+0

你不能得到這些路徑;這會侵犯用戶的隱私。 – bfontaine

+0

哎唷!謝謝@bfontaine – ManelPNavarro

+0

如果可能的話,沒有文件系統是安全的。 – RiggsFolly

回答

2

您無法獲取這些路徑;這會侵犯用戶的隱私。

文件API規範說對name屬性(重點煤礦):

文件的名稱;在獲取時,這必須以字符串形式返回文件的名稱。有不同的底層操作系統文件系統使用了許多文件名變體和約定; 這只是文件的名稱,沒有路徑信息。