2009-09-09 2 views
8

私は自分のフォームに次の要素があります。奇数Zend_Form_Element_File行動

$attachment = new Zend_Form_Element_File('attachment'); 
$attachment->setLabel('Attach File (2MB Max)'); 
$attachment->addValidator('Count', false, 1); 
$attachment->addValidator('Size', false, 2048000); 

私はビューでフォーム全体を印刷する場合、このフィールドは正常に動作しますが。しかし、私は表示のために使用しているいくつかの非常にカスタムHTMLを持っているので、私は私の見解では、このように各フォーム要素からエコーしています:これは、他のフィールドのために正常に動作します

<?=$this->form->attachment?> 

。ただし、このファイルフィールド。 Zend_Formの検証がメッセージで壊れますファイル 'attachment'が定義されたiniのサイズを超えていますしかし、私の投稿にファイルのアップロードは含まれていません。同じ場合でも同じメッセージでエラーが発生します。

アイデア?

答えて

11

正しい種類のEncTypeをやっていますか?これは 'multipart/form-data'でなければなりません。そうでない場合は、ファイル要素のキーが$ _FILES配列に入れられていない可能性があります。ファイル要素は、ファイルが大きすぎてサーバーにアップロードできないため、解釈します。

+0

私の場合は、愚かなことでした:p – almaruf

0

私はあなたのphp.iniのupload_max_filesizeディレクティブを確認しましたか?

+0

はい現在は32メガに設定されています。また、このエラーは、ファイルがアップロードされているときとファイルが選択されていないときの両方で発生しています – Mark

0

は、多分あなたは、部分的にフォームをレンダリングしている、フォームのビューにこれを入れてみてください、フォームの表示を確認してください。

<?=$this->form?> 

(これは私のために働いていた)

0

のみを形成しますか? >すべてのファイルをアップロードすると問題なく動作します。 しかし、フォーム - >ファイル?>

フォーム - >ファイルのように部分的なフォームを入れようとすると問題が発生します。>常にエラーが表示されるので、完全なフォームを実装し、