ODD Zend_Form_Element_File السلوك
-
05-07-2019 - |
سؤال
لدي العنصر التالي في النموذج الخاص بي:
$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 التحقق من الصحة مع الرسالة يتجاوز الملف "مرفق" حجم INI المحدد ومع ذلك ، لا أدرج أي تحميل ملف في مشاركتي ، وحتى لو فعلت ذلك ، فإنه لا يزال يخطئ في نفس الرسالة.
أيه أفكار؟
المحلول
هل تفعل النوع الصحيح من enctype؟ يجب أن تكون "متعددة/نموذج البيانات". إذا لم يكن الأمر كذلك ، فقد لا يتم وضع مفتاح عنصر الملف في صفيف $ _files ويفترق عنصر الملف أنه كان الملف كبيرًا جدًا بحيث لا يمكن تحميله على الخادم.
نصائح أخرى
MMM إذا كان يقول حجم INI ، هل قمت بفحص التوجيه upload_max_filesize في php.ini الخاص بك؟
تحقق من عرض النموذج ، ربما تقوم بتقديم النموذج جزئيًا ، حاول وضع هذا في عرض النموذج الخاص بك:
<?=$this->form?>
(هذا عمل بالنسبة لي)
نموذج فقط؟> سيعمل بشكل جيد مع تحميل أي ملف. لكن المشكلة تحدث عندما نحاول وضع نموذج جزئي على النحو التالي: Form-> file؟>
Form-> file؟> سيظهر دائمًا خطأ ، لذا حاول تنفيذ النموذج الكامل وتجنب وضع عناصر النموذج.