2013-03-05 63 views
1

我wana選擇與zend_form多個文件,並獲得它的完整路徑來處理我的行動。 但我不能選擇多個文件,我需要的,只是一個文件,我可以選擇,並且submited當我抓住一個錯誤「文件‘視頻’超過定義INI大小」,勾選頁面螢火我看到如何選擇多個文件並獲取它的路徑 - php - zend框架

<input type="hidden" id="MAX_FILE_SIZE" value="2097152" name="MAX_FILE_SIZE"> 

1.如何選擇多文件 /2.如何獲取文件的物理路徑? /這是我的形式

$videos = new Zend_Form_Element_File('videos'); 
    $videos->setLabel('Videos:') 
    ->addValidator('Count', false, array('min' => 1, 'max' => 10)) 
    ->addFilter('StringTrim') 
    ->addValidator('NotEmpty') 
    ->addValidator(new Zend_Validate_File_Size('200MB')) 
    ->setAttrib('enctype','multipart/form-data') 
    ; 

請幫助T_T,我只是瓦納獲得文件的唯一路徑,不想上傳文件

回答

1

可以使用HTML5多個屬性來選擇多個文件。

<html> 
    <head> 
     <title>Test</title> 
    </head> 
    <body> 
     <form> 
     <input type="file" multiple /> 
     </form> 
    </body> 
</html> 

您可以使用JavaScript獲取路徑....

+0

謝謝!投票了^^,使用javascript獲取路徑是很好的解決方案,以忽略Validator檢查文件大小。 – Serip88 2013-03-06 05:49:11

+0

ioi ioi!但我不能獲取文件的完整路徑,僅僅只獲得名文件在這些文件中 這是我的代碼的一個 功能的getPath(ID) { \t VAR值=的document.getElementById(ID).value的; \t alert(value); } 並且結果是file =。的一個名稱=。= – Serip88 2013-03-06 07:23:31

+0

爲什麼需要客戶機的完整路徑。你想達到什麼目的?可能可以幫助你,如果你可以發佈你的目標... – 2013-03-06 07:29:02

0

你提到的路徑是該文件在您的服務器上上傳的路徑。因此,您需要先將文件上傳到服務器上的特定文件夾(即上載)。然後獲取文件的路徑。

I.e.

$adapter = new Zend_File_Transfer_Adapter_Http(); 
$adapter->setDestination(APPLICATION_PATH.'/temp/upload'); 

if($adapter->receive()){ 
    $fileInfo = $adapter->getFileInfo(); 
    $filePath = APPLICATION_PATH.'/temp/upload/'.$fileInfo['uploadedFile']['name'] 
} 
+0

哦!這些文件放置在我的VPS中,而不是與我的主機相關聯,如果他們想要獲取他們獲得的所有視頻的信息,此功能可以由客戶端使用他們的視頻。雖然,在這個時候,只有我想使用這個功能,我知道,這種特殊情況 – Serip88 2013-03-06 08:05:00

+0

經過長時間搜索谷歌。我意識到我剛碰到一個關於安全的嚴重問題,但實際上,我並不是故意要做一些不好的事情 – Serip88 2013-03-06 19:16:13

相關問題