10 - Formulario
Un formulario html permite enviar datos al servidor.
Es el medio ideal para registrar comentarios del visitante sobre el sitio, solicitar productos, sacar citas etc.
De todos modos veremos que el lenguaje HTML solo tiene el objetivo de crear el formulario html. El HTML no tiene la responsabilidad de registrar los datos en el servidor, esta actividad está delegada a un lenguaje que se ejecute en el servidor (PHP, ASP, JSP, NodeJS, etc.)
Como este curso nos concentramos solamente en el lenguaje HTML no veremos como registrar los datos en el servidor. Si está impaciente puede visitar y ver como obtener datos de un formulario html y capturar los datos en el servidor mediante PHP.
Si recién comienza en el mundo del desarrollo de páginas web es recomendable primero aprender y conocer todos los elementos para la creación de formularios en HTML y en un paso posterior estudiar el registro en el servidor
Veamos la sintaxis básica para crear un formulario donde ingresemos nuestro nombre.
Para crear un formulario html debemos utilizar el elemento form, que tiene marca de comienzo y fin. Dentro de la marca form veremos otros elementos para crear botones, editores de texto, cuadros de checkbox, radios de selección, etc.
Crearemos un formulario para el ingreso de nuestro nombre y un botón para el envío del dato ingresado al servidor:
<!DOCTYPE html>
<html>
<head>
<title>Prueba de formulario</title>
<meta charset="UTF-8">
</head>
<body>
<form action="registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>
<input type="submit" value="enviar">
</form>
</body>
</html>
El resultado en el navegador es:
Veamos detenidamente la estructura de un formulario, lo primero la apertura de la marca form donde debemos definir dos propiedades (action y method):
<form action="registrardatos.php" method="post">
La propiedad action se inicializa con el nombre de la página que contiene el programa que procesará los datos en el servidor.
Todo los formularios que implemento y los que usted implementará como ejercicios deben llamar a esta página: «/registrardatos.php» más adelante cuando conozca un lenguaje de servidor podrá almacenarlos en una base de datos, consultar otros datos, modificar datos existentes, etc.
La segunda propiedad que debemos inicializar es method. Esta propiedad puede almacenar únicamente dos valores (post o get)
Normalmente un formulario se envía mediante post (los datos se envían con el cuerpo del formulario) En caso de utilizar get los datos se envían en la cabecera de la petición de la página, utilizando el método get estamos limitados en la cantidad de datos a enviar, no asi con el método post.
Ahora veamos el cuadro de texto donde se ingresa el nombre:
Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>
El mensaje «Ingrese su nombre:» es un texto fijo.
El elemento input permite definir un cuadro de texto (editor de línea) si asignamos a la propiedad type el valor «text».
Todo cuadro de texto debe inicializar la propiedad name con un nombre para el cuadro de texto. Este es un dato fundamental para poder recuperar el dato ingresado en el servidor (por ejemplo mediante PHP)
Por último inicializamos la propiedad size con el valor 20, esto significa que el cuadro de texto se dimensiona para permitir mostrar 20 caracteres (no se limita la cantidad de caracteres a ingresar por parte del visitante sino la cantidad de caracteres que se pueden visualizar)
Seguidamente:
<input type="submit" value="enviar">
También mediante el elemento input definimos un botón para el envío de datos al servidor. Debemos inicializar la propiedad type con el valor submit, con esto ya tenemos un botón para el envío de datos.
La propiedad value almacena la etiqueta que debe mostrar el botón.
Finalmente cerramos el formulario:
</form>