<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ejercicio 23</title>
<style>
.required{
background-color: lightyellow;
}
input:disabled{
background-color: lightgrey;
}
</style>
</head>
<body>
<?php
/* @author Cristian Mateos Vega
* @since 22/10/2025
*/
require_once '../core/231018libreriaValidacion.php';
//Inicialización de variables
$entradaOK = true;
$aErrores = [
'nombre' => '',
'edad' => '',
'altura' => ''
];
$aRespuestas = [
'nombre' => '',
'edad' => '',
'altura' => ''
];
// Comprobar si el formulario se ha enviado
if (isset($_REQUEST['enviar'])) {
$aErrores['nombre'] = validacionFormularios::comprobarAlfaNumerico($_REQUEST['nombre'], 100, 1, 1);
$aErrores['edad'] = validacionFormularios::comprobarEntero($_REQUEST['edad'], 100, 5, 0);
$aErrores['altura'] = validacionFormularios::comprobarFloat($_REQUEST['altura'], 100, 1, 0);
foreach ($aErrores as $campo => $valor) {
if ($valor != null) { // Si ha habido algun error $entradaOK es falso.
$entradaOK = false;
} else {
$aRespuestas[$campo] = $_REQUEST[$campo]; // Guardamos el dato correcto en el array de Respuestas.
}
}
} else {
// Formulario no enviado aún
$entradaOK = false;
}
// Tratamiento del formulario
if ($entradaOK) {
//Mostrar respuestas con datos (correctos) introducidos
echo "<h2>Formulario enviado correctamente</h2>";
echo "<p>Nombre: " . $aRespuestas['nombre'] . "</p>";
echo "<p>Apellidos: BLOQUEADO" . "</p>";
echo "<p>Edad: " . $aRespuestas['edad'] . "</p>";
echo "<p>Altura: " . $aRespuestas['altura'] . "</p>";
} else {
// Mostrar formulario y mensajes de error (si los hay)
?>
<form action="" method="post">
<label for="nombre">Nombre:</label><br>
<input type="text" name="nombre" id="nombre" class="required">
<span style="color:red;"><?php echo $aErrores['nombre']; ?></span><br><br>
<label for="nombre">Apellidos:</label><br>
<input type="text" name="nombre" id="nombre" disabled><br><br>
<label for="edad">Edad:</label><br>
<input type="number" name="edad" id="edad">
<span style="color:red;"><?php echo $aErrores['edad']; ?></span><br><br>
<label for="altura">Altura:</label><br>
<input type="float" name="altura" id="altura">
<span style="color:red;"><?php echo $aErrores['altura']; ?></span><br><br>
<input type="submit" name="enviar" value="Enviar">
</form>
<?php
}
?>
</body>
</html>