lunes, 14 de mayo de 2007

Formularios HTML en menos de 5 minutos

Este es otro pequeño HOW-TO basado en el framework PEAR, esta vez crearemos en menos de 5 minutos un formulario con su validación listo para ser enviado.


La librería a utilazar se llama HTML_QuickForm, para su instalación podriamos hacerlo así:

$ pear install HTML_QuickForm

O bien puedes descargar el paquete desde http://pear.php.net/package/HTML_QuickForm/download

Una vez que cuentas con la libreria es hora de crear nuestro formulario:

require_once("HTML/QuickForm.php");

//Creamos nuestro formulario con el nombre de frmBuscar
$formulario = new HTML_QuickForm('frmBuscar');
//Asignamos los valores por deafault de nuestro elementos
$formulario->setDefaults(array('busqueda' => '',
'opcion'=>'1'));

//Creamos un encabezado para nuestro formulario
$formulario->addElement('header', null,
'

Búsqueda de Anuncio Clasificado
');

/*Agregamos un campo de texto con el nombre de busqueda y la
leyenda Palabra a Buscar, tamaño de 50 caracteres y solo se
permitira capturar 255 caracteres */
$formulario->addElement('text', 'busqueda', 'Palabra a Buscar',
array('size' => 50, 'maxlength' => 255));

//Agregamos un campo oculto en nuestro formulario
$formulario->addElement('hidden','opcion');

//Apartir de aquí crearemos un elemento de tipo SELECT
//Iniciaremos por crear las opciones para este elemento
$opts = array("0"=>"Todos","puebla"=>"PUEBLA","tlaxcala"=>"TLAXCALA",
"df"=>"DF Mexico","veracruz"=>"VERACRUZ");
/*Creamos el elemento select con nombre de estado, la leyenda Estado,
y agregamos la opciones*/
$s_estado=$formulario->createElement('select','estado','Estado:',$opts);
$formulario->addElement($s_estado);

//Agregamos nuestro boton para mandar la información
$formulario->addElement('submit', null, 'Buscar');

/*Aplicamos un filtro a nuestro campo busqueda para eliminar
espacios en blanco tanto a la derecha como a la izquierda */
$formulario->applyFilter('busqueda', 'trim');

/*Y pones la restricción, para que el usuario tenga que escribir algo
en nuestro campo busqueda antes de ser enviado */
$formulario->addRule('busqueda', 'Teclee la palabra a Buscar', 'required', null, 'client');

//Por ultimo solo despelgamos nuestro formulario
$formulario->display();
?>

Este código nos generara una página HTML que contendra un formulario de busqueda, el cual contendra un campo de texto validado, un select para seleccionar un estado, y un campo oculto con valor de 1.

En la segunda parte de este pequeño HOW-TO explicare cada una de las funciones utilizadas aqui, y escribire un ejemplo un poco mas completo.



Fuente: http://jeiff.blogspot.com/

No hay comentarios.: