2012-04-06 72 views
1

我想用Zend_Form_Element_File和HTML屬性multiple上傳多個圖像。設置元素直觀的運行:使用Zend_Form_Element_File和HTML5的多個屬性上傳多個文件

$form->addElement(new Zend_Form_Element_File(
    'images', 
    array('label' => 'Images:', 'multiple' => 'multiple') 
)); 

當我在我的上傳頁面UND輸入字段參考做$input->receive(),而是隻保存選定的文件之一。

當我搜索諸如「Zend_Form_Element_File多個文件」之類的東西時,我只得到顯示使用Zend_Form_Element_File::setMultiFile()的結果,這不是我正在尋找的結果。

有什麼建議嗎?

回答

7

就找到了答案,以我自己的問題:

你必須設置「IsArray的」輸入元素爲true,無論是在構造元素(new Zend_Form_Input_File('images', array('isArray' => true)))當選擇陣列或通過IsArray的()方法($input->setIsArray(true))。

一些背景信息,以及如何我終於找到了這個解決方案:

首先,我意識到,我必須apend方括號中元素的名稱爲多文件上傳的工作,例如, images[]。我不知道這是HTML規範還是PHP需要的東西,但這就是它應該如何工作的情況。

我的下一個問題是,當我嘗試使用name屬性設置它們時,Zend_Form_Element刪除了括號。最後,我偶然發現了answer by Matthew Weier O'PhinneyisArray爲你添加了[]

+0

感謝您的支持!一直在尋找如何做至少一個小時! :) – jjmu15 2012-06-08 14:06:03