2013-03-05 40 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

相关问题