¿Que es un formulario?
Los formularios son una característica del estándar HTML Que permite a los autores recolectar información provista por los visitantes. Estos formularios pueden resultar útiles para reunir información personal, de contacto, preferencias, opiniones, o de cualquier otro tipo que el autor necesite. Los formularios son una característica del estándar HTML
En resumen podríamos decir que los formularios son el interface mediante el cual una persona introduce datos en un programa web
Para crear un formulario ponemos esta etiqueta
<form method="post" action="handler.php"> ...Controles... </form>
Toda la información recolectada por un formulario puede ser enviada a un agente procesador (un archivo conteniendo un script hecho especialmente para procesar esta información) que usualmente va especificado en el atributos "action".
También puedes especificar cómo la información será enviada en el valor del atributo "method":
"post" (los datos del formulario son adjuntados al cuerpo del mismo) ó "get" (los datos del formulario son adjuntados a la URL). Se supone que el agente procesador sabe cuál es el método de envío del formulario.
-Etiqueta select-
Select inserta una lista desplegable de opciones en un documento o formulario. Este tipo de control presenta un conjunto de opciones (etiqueta "option"), que pueden ser organizadas en grupos (etiqueta "optgroup").Esencialmente, este control es una alternativa a los botones radio o a las casillas de verificación, dependiendo del valor del atributo "multiple".
<select name="nombre" [size="filas" multiple]> <option value=“01”>valor1 <option deleted value=“02”>valor2 <option”>valor3 (…) </select>
-Etiqueta textarea-
Textarea inserta un control de entrada de texto en un documento o formulario,este control puede aceptar más de una línea de texto como entrada. Esta característica especial, hace de este elemento una buena elección a la hora de requerir comentarios o mensajes.
La etiqueta "textarea" consisnte en recolectar información provista por el usuario. Una vez llenado, el contenido de esta etiqueta puede ser enviado por el mismo y luego recibido por el agente procesador, quien manejará la información como sea requerido
<textarea name="nombre" rows="filas" cols="columnas"> [texto predefinido] </textarea>
-Etiqueta Input-
Input inserta uno de muchos tipos de controles en un formulario, usualmente destinado a recolectar información provista por el usuario. Una vez llenado, el contenido de estos controles puede ser anviado por el usuario y recibido por un agente procesador que manejará la información recolectada.
El tipo de control mostrado depende del atributo "type" que puede tomar uno de los diez valores siguiente.
Text
Cuando este valor es establecido, un control de entrada de texto es mostrado. Este tipo de control puede recibir información textual.
Password
Este control trabaja de manera exacta a los controles de tipo "text", con la excepción de que oculta visualmente los caracteres ingresados reemplazándolos por puntos o asteriscos. esto es útil para proveer cierto nivel de protección de información/cotraseñas.
Checkbox
Una casilla de verificación es un control que permite a los usuarios cambiarlo entre dos valores: marcado y no marcado. Este tipo de control puede resultar útil para hacer simples preguntas "sí ó no" a los visitantes de la página. Un buen ejemplo de su uso puede ser un formulario donde el usuario debe seleccional hobbies o intereses (películas, radio, compras, etc.).
Muchas casillas de verificación pueden compartir un mismo nombre de control, permitiendo a los autores más de un valor para una sola propiedad.
Radio
Los botones radio trabajan de forma muy similar a las casillas de verificación, permitiendo a los usuarios elegir entre dos valores posibles: marcado y no marcado. La diferencia radica en la exclusividad: cuando muchos botones radio comparten un mismo valor en el atributo "name", sólo uno de ellos puede ser marcado, y cuando ocurre, todos los demás son automáticamente desmarcados.
Submit
Al definirse con este tipo, el elemento HTML input inserta un botón de envío. Este botón envía automáticamente la información recolectada al agente procesador cuando es presionado.
Reset
Cuando es presionado, un botón reset lleva la información en todos los controles del formulario a sus valores iniciales.
Button
Este tipo de control crea un botón regular (que luce igual a los botones submit y reset) que, a diferencia de los anteriores, no tiene ninguna acción asociada predeterminada. Si no se le asigna una acción manualmente, noda sucederá cuando sea presionado.
Este botón es mayormente utilizado para ejecutar funciones del lado cliente al ser presionado.
Image
Este tipo de control consiste en una imagen, apuntada en el atributo "src", que se comporta casi exactamente como el botón submit. La diferencia con el mismo radica en que, al ser presionado, además de enviar el formulario, el control de tipo "image" también envía las coordenadas (desde la esquina superior izquierda de la imagen) donde ha ocurrido el click. Los nombres de las coordenadas se construyen utilizando el valor del atributo "name" del elemento, en la forma: nombreelemento.x and nombreelemento.y.
file
Un control de archivo permite la entrada y subida de archivos al servidor. Los usuarios deben especificar la ruta local del archivo como contenido del control. Para ayudar con esto, los navegadores usualmente agregan un botón que, cuando es presionado, abre un navegador de archivos que permite a los usuarios elegir el archivo visual y fácilmente.
Nota que para que la subida de archivos sea satisfactoria, el atributos "enctype" del formulario debe tomar el valor "multipart/form-data".
Hidden
Los controles ocultos permiten a los autores insertar valores en un formulario que no serán mostrados al usuario pero si se enviarán con el mismo.
Un buen ejemplo de su uso son aquellos formularios complejos que consisten de dos o más estapas (como las encuestas), donde la transición de una etapa a la siguiente es lograda a través del envío de un formulario. entonces, los valores de las etapas anteriores son "guardadas" en controles ocultos.