Unidad 8. Formularios (II)



8.2. Atributos de la etiqueta <form>

El atributo action indica una URL (dirección) a la que enviar los datos del formulario. Esta URL debe ser un elemento capaz de recibir los datos del formulario y procesarlos. Normalmente es un programa escrito en un lenguaje de programación web (PHP, Java, ...) que se ejecutará en el servidor web. Por ejemplo, el programa puede realizar una validación de los datos, grabarlos en una base de datos y arrancar otro programa para continuar con el proceso, o devolver el control al usuario para que continue con el proceso. En los casos en que los datos no requieran un tratamiento complejo también se puede utilizar un lenguaje de programación que se ejecute en el navegador web (Javascript). Si no se especifica el atributo action, o se escribe action="#" los datos los recibe la misma página que contiene el formulario.

Al recibir datos de un usuario a través de un formulario es conveniente validar los datos, esto se puede hacer de diversas formas. Vamos a ver las tres más comunes.

1. Validar con el propio formulario. La primera validación se suele hacer con los mecanismos que dispone el fomulario para realizar una validación sencilla, por ejemplo, comprobar que una fecha es correcta o que un dato no se ha dejado en blanco, esto lo veremos un poco más adelante.

2. Validar en elnavegador. Al pulsar en el botón para enviar, el formulario se puede llamar a un programa que realice un validación en el navegador web, esta manera de validar se realiza cuando no es posible realizarla con los mecanismos del formulario, por ejemplo, comprobar que un NIF es correcto.

3. Validar en el servidor. Se pueden validar los datos desde el lado del servidor web con programación web, esto se hace cuando las validaciones necesitan acceder a una base de datos, por ejemplo, para saber si un usuario ya está registrado en un sitio web o es un alta nueva.

Aparte de este tipo de validación conviene realizar un filtrado por cuestiones de seguridad para evitar que un usuario pueda introducir código malicioso, más adelante trataremos este tema.

El atributo method indica el método mediante el que se transfieren las variables del formulario. Su valor puede ser get o post. El método es una característica del protocolo HTTP y afecta a la forma de comunicación, no al contenido de los datos.

Con valor get los datos se envían junto con la URL del formulario, por lo cual cualquiera puede verlos en la barra de direcciones del navegador. También quedan almacenados en la historia del navegador. Se considera un método poco seguro, por este método no se deben enviar passwords, ni datos sensibles. Es el método que se usa cuando no se especifica el atributo method.

Con el valor post los datos se envían de forma interna, no junto a la URL, no son visibles en la barra de direcciones del navegador, ni se almacenan en la historia del navegador. Por lo que se considera un método más seguro que el método get.

El atributo autocomplete admite dos valores, on y off. Si escribimos autocomptete="on", el navegador intentará mostrar sugerencias al usuario para rellenar los datos según lo introducido previamente en otros formularios. Por ejemplo, si hay un campo que se llama apellidos y otras veces ya lo hemos rellenado, el navegador nos mostrará una lista con apellidos por si queremos elegir alguno de ellos. Si autocomptete="off", no se mostrarán sugerencias. Podemos especificar este atributo a nivel de la etiqueta form, con lo cual afectará a todos los campos, o a nivel de cada campo, en este caso tendrá preferencia lo indicado a nivel de campo.

El atributo novalidate, si aparece, indica que no se realicen las validaciones indicadas a nivel de los campos del formulario. Por ejemplo, si hemos indicado que un campo es numérico y en la etiqueta form especificamos novalidate, se permitirán datos no numéricos es ese campo. A nivel de campo tipo submit disponemos del atributo formnovalidate para indicar que si se pulsa ese botón no se validen los campos del formulario.

El atributo enctype indica el modo en que será cifrada la información para su envío. Por defecto tiene el valor application/x-www-form-urlencoded.

En el siguiente formulario vamos a ver algunos ejemplos de estos atributos, el formulario llamará al programa recibir.php para tratar los datos, con el método get y el tipo de encriptación application/x-www-form-urlencoded, no se realizarán validaciones de datos y el campo de entrada no mostrará sugerencias para rellenarlo.

<form action="recibir.php" method="get" novalidate enctype="application/x-www-form-urlencoded">
<p>Escribe aquí tu petición <input type="text" name="mensaje" autocomptete="off"></p>
<p><input type="submit" value="Enviar"></p>
</form>

8.3. Etiqueta <input> de un formulario

La etiqueta input es la encargada de crear los campos de entrada del formulario. Aunque la etiqueta input también se puede utilizar sin estar ligada a un formulario. Existen bastantes tipos de datos para el elemento input, por ejemplo, texto, casilla de verificación, área de texto, fecha, etc., para cada uno de ellos el navegador web crea un campo con el formato adecuado de forma automática. El atributo type define el tipo del elemento input.

Para cada tipo de input podemos añadir otros atributos para controlar diferentes características. Hay atributos genéricos que se pueden incluir en la mayoría de tipos de campos de entrada, hay otros atributos más específicos que sólo se pueden incluir en unos tipos concretos. Por ejemplo para todos los tipos podemos incluir el atributo name que identifica el campo de entrada, pero el atributo checked sólo tiene sentido con los tipos de campo checkbox y radio, como veremos más adelante.

Los atributos más comunes son name, value, required, placeholder, size, maxlength, minlength, autofocus, disabled, src y alt. La función de cada uno de estos atributos la vamos a ver a continuación según vamos explicando los diferentes tipos de campos, de la misma forma iremos viendo los atributos específicos para cada caso.

Como decimos, en los siguientes apartados vamos a ver los distintos valores que puede tomar el atributo type de la etiqueta input en un formulario.


Enero-2019 (V 2.0)
Pág. 8.2
Atrás Inicio Adelante






Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook ,    G+            Sobre aulaClic            Política de Cookies


© aulaClic S.L. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.