Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sin embargo, estamos llegando a los límites de HTML, ya que es entonces necesario
analizar la información que el usuario ha introducido, y esto no se puede hacer en HTML.
Como veremos, el tratamiento de los resultados debe hacerse en otro lenguaje de
programación, como el PHP.
Crear un formulario
Para empezara insertar un formulario en la página HTML, necesitamos para comenzar con
la etiqueta <form> </form>. Esta es la principal etiqueta de formulario, permite indicar su
principio y el fin.
Para dar respuesta a estos problemas, debe agregar dos atributos a la etiqueta <form>:
method: Especifica los medios por los cuales los datos serán enviados
(respondemos a la primera cuestión antes planteada). Hay dos formas de enviar
los datos en la red:
Vamos a completar la etiqueta <form> con los dos atributos que acabamos de ver.
Para action, vamos a usar el nombre de una página ficticia en PHP (recibirdatos.php). Esta
es la página que se llama cuando el usuario hace clic en botón de envío del formulario.
Nuestra prioridad en este momento es encontrar HTML / CSS cómo insertar cuadros de
texto, botones y casillas de verificación en su página web. Esto es lo que vamos a ver
ahora.
Verás esta etiqueta varias veces en el resto de este capítulo. En cada ocasión será es el
valor del atributo type el que le dará una utilidad u otra.
Todavía no es suficiente: hay que darle un nombre al cuadro de texto. Este nombre no
aparece en la página, pero necesitarás recordarlo más adelante. De hecho, esto permitirá
(por ejemplo, a PHP) reconocer de dónde proviene la información: se puede saber si este
texto es el nombre del visitante, si dicho texto es la contraseña que eligieron, etc. Como
puedes imaginar, no podemos repetir en el formulario campos con el mismo nombre,
puesto que esto originaría una confusión.
Para practicar, vamos a tratar de crear un formulario muy básico con nuestro campo de
texto:
Las etiquetas
El cuadro de texto funciona, pero tal y como está no resulta demasiado informativo. Si hay
varios, el usuario no sabrá que escribir en cada uno de ellos. Ese es precisamente el papel
de la etiqueta <label>:
Para ello, tenemos que dar un nombre al cuadro de texto, no con el atributo de name, si no
con el atributo ID (que se puede utilizar en todas las etiquetas).
Para enlazar la etiqueta para el campo, se le debe dar un atributo for que el mismo valor
que el ID del campo... Se ve mejor en un ejemplo:
Solo intentas hacer clic en el texto "Nombre propio" verás que el cursor se coloca
automáticamente en el cuadro de texto.
En el siguiente ejemplo, el cuadro de texto contiene una indicación del valor a introducir; el
campo es de 30 caracteres de largo, pero se puede escribir un máximo de 10 caracteres
en su interior:
Al igual que con cualquier otro elemento de formulario, hay que darle un nombre con el
namey el uso de una label que explica lo que hace.
CSS: tan sólo con aplicar las propiedades CSS a l width y height del <textarea>.
Con atributos: añadiendo directamente los atributos rows y cols a la etiqueta
<textarea>. El primero indica el número de líneas de texto que se pueden visualizar
de forma simultánea, y el segundo número de columnas.
Como habrás visto, la etiqueta <textarea> se cierra después de ser abierta, cosa que no
ocurría con las otras etiquetas de formularios que habíamos visto hasta ahora. La razón es
que puede pre-llenar el <textarea> con un valor por defecto. En este caso, no usamos el
Ante todo, ten en cuenta que los navegadores más antiguos no reconocerán estos campos
de entrada enriquecidos. En su lugar, las versiones más antiguas de navegadores
mostrarán un cuadro de texto de una línea sencilla (como si hubiéramos escrito
type="text". Esto no es ningún problema: los nuevos navegadores pueden disfrutar de las
últimas características, mientras los más viejos mostrarán un sustituto adecuado en forma
de cuadro de texto.
Por lo tanto, es muy interesante utilizar estos campos de entrada siempre que sea
necesario.
E-mail
Puede pedir que introduzcan una dirección de correo electrónico:
El campo aparecerá a priori idéntico al que ya conocíamos pero su explorador ahora sabe
que el usuario debe introducir una dirección de correo electrónico. Se puede presentar una
indicación si la dirección no es una dirección de correo válida, eso es lo que hace que
Firefox por ejemplo.
Además, aporta la ventaja de que algunos navegadores, como los navegadores móviles en
iPhone y Android, tienen un teclado adecuada para escribir el correo electrónico, lo que
hace más cómodo el cumplimentar estos campos.
URL
Número de teléfono
Este campo se dedica a la entrada de los números de teléfono:
IPhone, por ejemplo, muestra un teclado numérico cuando procede completar este campo.
Número
Este campo permite introducir un número entero:
El campo se mostrará generalmente con pequeñas flechas para cambiar el valor. Puedes
personalizar el funcionamiento del campo con los siguientes atributos:
Range
El tipo range se usa para seleccionar un número con un control deslizante (también
llamado control deslizante), como en la figura siguiente:
Color
Este campo le permite introducir un color:
Fecha
Existen diferentes tipos de selección de fecha campos:
Ejemplo:
Buscador
Puedes crear un cuadro de búsqueda de esta manera:
casillas de verificación;
botones de opción;
Recuerda que debes dar un nombre diferente a cada casilla, esto permitirá identificar más
tarde cual escogió el visitante.
Por último, debes saber que puede hacer una casilla está activada de forma
predeterminada con atributo checked:
Normalmente cualquier atributo tiene un valor. En este caso, sin embargo, no es necesario
agregar un valor: la presencia del atributo es suficiente para dejar claro al ordenador debe
ser marcada.
Botones de opción
Los botones de opción permiten hacer una elección (y sólo una) entre una lista de
posibilidades, a diferencia de lo que ocurría antes, que podíamos marcar tantas como
quisiéramos.
Son parecidas a las casillas de verificación, con una pequeña diferencia: deben ser
organizados en grupos. Las opciones de un mismo grupo tienen el mismo nombre (name),
pero cada opción deben tener un valor (value) diferente.
Lo veremos en un ejemplo:
¿Por qué ponemos el mismo nombre para cada opción? Así que el navegador sabe a qué
"grupo" pertenece cada botón.
Si quitas el atributo name, verás es posible seleccionar todos los elementos del grupo de
de opciones, cosa que no queremos. Por ese motivo los vinculamos dándoles el mismo
nombre.
Si dispone de dos bloques de opciones diferentes, debemos dar un name único a cada
grupo, como sigue:
</p>
<p>
Indica tu color preferido:<br>
<input type="radio" name="color" value="rojo" id="rojo">
<label for="rojo">rojo</label><br>
Listas desplegables
Las listas desplegables son otra manera elegante de hacer una selección entre varias
alternativas. La operación es un poco diferente. Vamos a utilizar la etiqueta <select>
</select> que indica el inicio y el final de la lista. A esta se añade el atributo name para dar
un nombre a la lista.
Un ejemplo de uso:
De esta forma, un listado extenso puede quedar más ordenado. En nuestro caso, los
continentes no pueden ser elegidos, solo sirven para agrupar los valores disponibles.
Campos de grupo
Si el formulario crece y tiene una gran cantidad de campos, puede ser útil agrupar varias
etiquetas dentro <fieldset>. Cada <fieldset> puede contener una etiqueta identificativa con
la etiqueta <legend>. Mira este ejemplo:
<p>
Indicanos tu estado civil:
<p>
<label for="comentarios">Comentarios:</label>
<textarea name="comentarios" id="comentarios" cols="40"
rows="4"></textarea>
</p>
</fieldset>
El navegador avisa al visitante si el campo está vacio, de que debe ser llenado. Los
navegadores más antiguos que no reconocen este atributo, de manera que enviar el
contenido del formulario sin verificación. Para estos navegadores, será necesario para
completar la verificación, por ejemplo, con scripts de JavaScript.
El botón enviar
Para finalizar, vamos a crear el botón Enviar. Una vez más, la etiqueta <input /> será la
que utilicemos. Está disponible en cuatro versiones:
type="submit": sirve para enviar el formulario. Este es el que vas a utilizar con más
frecuencia. Los visitantes serán dirigidos a la página indicada en el atributo action
formulario.
type="reset": borra todo el formulario sin enviarlo.
type="imagen": botón equivalente submit, pero en esta ocasión se presenta en
forma de imagen. Agregaremos el atributo src para especificar la dirección URL de
la imagen que deseamos mostrar.
tipo= button": botón genérico, que no tendrá (por defecto) ningún efecto. En
general, este botón se utiliza para gestionar programas en JavaScript y realizar
acciones en la página. No lo vamos a utilizar aquí.
También puedes cambiar el texto que se muestra en el botón con el atributo value. Para
crear un botón de envío escribiríamos, por ejemplo:
El problema es que esta página que procesa el formulario no se puede crear sólo en
HTML. Es necesario aprender un nuevo idioma, como por ejemplo, el PHP, para poder
"recuperar" la información introducida y decidir qué hacer con ella. Por supuesto, ¡también
tenemos cursos de PHP a tu disposición!