Gracias @triby, funciona muy bien.
Está muy bien crear el formulario por medio de una función, deja el código más limpio la verdad. Por otro lado, cuando todo está correcto y tiene que procesar el formulario, aun procesándolo aparece el formulario abajo.
He probado metiendole un else a
Código PHP:
Ver originalif(isset($_POST['edad'])) { // validación
} else {
// aquí muestra formulario
}
Y ahora si lo rellenas todo procesa el formulario, muestra el echo y nada más, hasta ahí bien. Pero en cambio si falta algo por rellenar, no muestra el formulario con el error. si no que la página se queda en blanco.
Ni una ni otra. Que lio!!!