2009-09-09 33 views
8

tôi có các yếu tố sau đây trong hình thức của tôi:hành vi Zend_Form_Element_File lẻ

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

Nếu tôi in toàn bộ hình thức trong giao diện, lĩnh vực này hoạt động tốt. Tuy nhiên tôi có một số HTML rất tùy chỉnh mà tôi đang sử dụng để hiển thị, vì vậy tôi đang lặp lại từng phần tử dạng như thế này trong quan điểm của tôi:

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

Điều này làm việc tốt cho các lĩnh vực khác. Tuy nhiên đối với trường tệp này. Xác nhận Zend_Form vi phạm với thông báo Tệp 'tệp đính kèm' vượt quá kích thước ini được xác định Tuy nhiên tôi không bao gồm bất kỳ tệp tải lên nào trong bài đăng của mình và thậm chí nếu tôi thực hiện, nó vẫn là lỗi với cùng một thông báo.

Bất kỳ ý tưởng nào?

Trả lời

11

Bạn đang làm đúng loại EncType? Nó phải là 'multipart/form-data'. Nếu không, khóa của phần tử tệp có thể không được đặt trong mảng $ _FILES và phần tử tệp giải thích rằng tệp quá lớn để được tải lên máy chủ.

+0

đó là điều ngu xuẩn - trong trường hợp của tôi: p – almaruf

0

Mmm nếu nó nói kích thước ini, bạn đã kiểm tra chỉ thị upload_max_filesize trong tệp php.ini của mình chưa?

+0

có hiện tại thiết lập là 32 meg. Ngoài ra, lỗi này xảy ra cả khi tệp đang được tải lên và khi không có tệp nào được chọn – Mark

0

kiểm tra quan điểm của các hình thức, có lẽ bạn đang render hình thức một phần, cố gắng đặt này trên quan điểm của mẫu của bạn:

<?=$this->form?> 

(này làm việc cho tôi)

0

chỉ hình thành? > sẽ hoạt động tốt khi tải lên bất kỳ tệp nào. nhưng vấn đề xảy ra khi chúng tôi cố gắng đặt một phần biểu mẫu dưới dạng: form-> file?>

form-> file?> Nó sẽ luôn hiển thị lỗi nên cố gắng triển khai biểu mẫu đầy đủ và tránh đặt các thành phần của biểu mẫu.