2009-09-09 27 views
8

tengo el siguiente elemento en mi forma:comportamiento extraño 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); 

Si puedo imprimir el formulario completo en la vista, este campo funciona bien. Sin embargo, tengo algo de HTML muy personalizado que estoy usando para la pantalla, por lo que estoy haciendo eco a cabo cada elemento de la forma como esto en mi opinión:

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

Esto funciona bien para otros campos. Sin embargo, para este campo de archivo. La validación de Zend_Form se rompe con el mensaje El archivo 'archivo adjunto' excede el tamaño de ini definido Sin embargo, no incluyo ninguna carga de archivo en mi publicación, e incluso si lo hago, aún se produce un error con el mismo mensaje.

¿Alguna idea?

Respuesta

11

¿Estás haciendo el tipo correcto de EncType? Debe ser 'multipart/form-data'. Si no es así, es posible que la clave del elemento del archivo no se ponga en la matriz $ _FILES y el elemento del archivo lo interprete ya que el archivo era demasiado grande para cargarse en el servidor.

+0

que fue una tontería, en mi caso: p – almaruf

0

Mmm si dice en tamaño, ¿has comprobado la directiva upload_max_filesize en tu php.ini?

+0

sí, actualmente está configurado en 32 megas. Además, este error ocurre tanto cuando se carga un archivo, y cuando no se selecciona ningún archivo – Mark

0

cheque el punto de vista de la forma, tal vez se renderiza la forma parcialmente, intenta poner esto en la vista de su forma:

<?=$this->form?> 

(Esto funcionó para mí)

0

única forma? > funcionará bien con la carga de cualquier archivo. pero el problema ocurre cuando tratamos de poner forma parcial como: form-> file?>

form-> file?> Siempre mostrará un error así que trate de implementar la forma completa y evite poner elementos de forma.