Noticias Weblogs Foros Wiki Código
Sponsors:

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

PlanetaCódigo en inglés

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

programania

Zend_Form: ejemplo básico

Febrero 29th, 2008 - [Enlace local]

Necesidades habituales de un programador al desarrollar formularios web:

  1. generar el html
  2. validar la entrada de datos
  3. filtrar la salida
  4. gestionar los datos por defecto, datos tras error de validación, etc.
  5. gestionar los mensaje en caso de error.

Os pego aquí un ejemplo básico de uso donde se puede ver como, además, con una simple línea cargo en un desplegable los dato de la BD:

$form = new Zend_Form();

$form->setAction(’/index/registrarse’)
->setMethod(’post’);

$form->clearDecorators();

$form->addDecorator(’FormElements’)
->addDecorator(’HtmlTag’, array(’tag’ => null))
->addDecorator(’Form’);

$decorators = array(
array(’ViewHelper’, array(’tag’ => null)),
array(’Errors’, array(’tag’ => null)),
array(’Label’, array(’tag’ => null, ’separator’=>’
‘)),
array(’HtmlTag’, array(’tag’ => null)),
);

$form->addElement(’select’,'usuarios’, array (
‘MultiOptions’=>Zend_Registry::Get(’dbAdapter’)->fetchPairs(’SELECT IdUsuario,Nombre FROM usuarios’),
‘label’ => ‘Elige usuario’,
‘validators’ => array(’NotEmpty’),
‘required’ => true,
‘decorators’ => $decorators
)
);
echo $form;

En éste ejemplo hago bastante hincapié en el uso de decorators. Que yo creo que es lo que peor está explicado en la documentación del Zend_Form.  Lo mejor es que uno puede cargar con Zend_Registry un array de decorators, en vez de declararlo cada vez como he hecho yo, de tal manera que si cambia el array, cambiará el HTML de todos los formularios. ¡máxima reutilización!

El Zend_Form ofrece una manera elegante de gestionar todo lo relacionado con la programación de formularios de manera muy sencilla.

NOTA: cada vez que copipasteo código PHP en el blog sale un chorizo. ¿algún plugin de wordpress para “embellecer” mi código?

» Leer más, comentarios, etc...