Utilizar un formulario

Uno de los puntos fuertes de PHP es su capacidad para manejar formularios. El concepto básico que es importante entender es que todos los campos de un formulario estarán automáticamente disponibles en el script PHP de acción. Lea el capítulo del manual relativo a las variables desde fuentes externas a PHP para más información y ejemplos sobre cómo utilizar los formularios. Aquí hay un ejemplo de formulario HTML :

Ejemplo #1 Un formulario HTML simple

<form action="action.php" method="post">
   <label>Su nombre :</label>
   <input name="nombre" id="nombre" type="text" />

   <label>Su edad :</label>
   <input name="edad" id="edad" type="number" /></p>

   <button type="submit">Validar</button>
</form>

No hay nada especial en este formulario. Está en HTML puro, sin ninguna configuración especial. Cuando el visitante rellena el formulario, y hace clic en el botón OK, se llama al fichero action.php. En este fichero, se puede escribir el siguiente script :

Ejemplo #2 Mostrar datos de un formulario

Hola, <?php echo htmlspecialchars($_POST['nombre']); ?>.
Tienes <?php echo (int) $_POST['edad']; ?> años.

Aquí está el resultado que podría obtener, según los valores que haya introducido :

Hola Juan.
Tienes 29 años.

Aparte de las partes htmlspecialchars() y (int), este script solo hace cosas evidentes. htmlspecialchars() se asegura de que todos los caracteres especiales HTML se codifiquen correctamente para evitar inyecciones de etiquetas HTML y de Javascript en sus páginas. Para la edad, dado que sabemos que es un entero, se puede convertir en un int. También se puede pedir a PHP que lo haga automáticamente por usted utilizando la extensión filter. Las variables $_POST['nombre'] y $_POST['edad'] son creadas automáticamente por PHP. Un poco antes en este tutorial, hemos utilizado la variable $_SERVER, una superglobal. Ahora, hemos introducido otra superglobal $_POST que contiene todos los datos enviados por el método POST. Tenga en cuenta que en nuestro formulario, hemos elegido el método POST. Si hubiéramos utilizado el método GET entonces nuestro formulario habría colocado esta información en la variable $_GET, otra superglobal. También se puede utilizar la variable $_REQUEST, si no desea preocuparse por el método utilizado. Contiene una mezcla de los datos de GET, POST, COOKIE y FILE.