2012-12-31 57 views
0

我正在使用SwfUpload,我希望能夠指定目標文件夾。現在我已經硬編碼了最終目的地,但我希望能夠實時控制它。有沒有辦法讓SwfUpload將其提交給我的上傳腳本?我試圖將其作爲隱藏變量添加到顯示上傳器的表單中,但它並未將其添加到我的腳本中:使用swfupload指定上傳路徑

下面是顯示上傳器的表單。網頁的其餘部分非常標準,所以我沒有包括它。尋找隱藏字段 「的DestinationPath」

<form id="form1" action="nowhere.html" method="post" enctype="multipart/form-data"> 
    <p>Select file to upload for program. 
    </p> 

     <div class="fieldset flash" id="fsUploadProgress"> 
     <span class="legend">Upload Queue</span> 
     </div> 
    <div id="divStatus">0 Files Uploaded</div> 
     <div> 
      <span id="spanButtonPlaceHolder"></span> 
      <input id="btnCancel" type="button" value="Cancel All Uploads" onclick="swfu.cancelQueue();" disabled="disabled" style="margin-left: 2px; font-size: 8pt; height: 29px;" /> 
     </div> 
    <input name="destinationpath" type="hidden" value="c:/DigitalMediaFiles/"> 
</form> 

然後在upload.php的我檢查它:

if (isset($_REQUEST["destinationpath"])) 
    $save_path = $_REQUEST["destinationpath"]; 

,但其未設置。我懷疑瑞士法郎上傳不提交表格。

回答

0

做到這一點的方法是在SWFSettings對象

post_params的post_params來指定參數: { 「的DestinationPath」: 「C:\ DigitalMediaFiles」 },

我嘗試使用addPostParam ()但這並不適合我。把它放在設置的post_params中。

0

如果您的目標文件夾與up-loader(客戶端)無關,您可以在php腳本中執行此操作,而無需從客戶端腳本獲取該變量。這是通過php腳本將文件保存在目標目錄中。

如果目標文件夾與每個客戶端不同,仍然可以將它們保存在同一個目錄中,並使用.htaccess文件爲每個客戶端重寫URL(使用客戶端ID)。在這種情況下,您需要保存您的文件,以便將客戶端ID保留在文件名的一部分中。您可以使用分隔符分解文件名。

如果仍然需要按照您自己的方式來完成,那麼您只需在配置js文件中使用post_params:{}函數,該文件爲swfupload.js文件編碼。在這種情況下,post_params:{}函數將如下所示:

post_poarams: { 'your-variable-name-in-php-goes-here': 'value of this variable at this time goes here' },