Aunque con HTML5 puedes hacer la validación desde el lado del cliente, siempre es bueno hacerlo también del lado del servidor, pero creo que te complicas mucho para hacerlo. Aunque tengas 500 inputs por validar, pueden validarse con una función compuesta por unas cuantas líneas de código y que podrás reutilizar en todos los formularios que desees. Paso a mostrar el código y luego te explico:
EN EL ARCHIVO recibe.php:
if($_POST)
foreach($_POST as $indice => $dato)
echo "
Se recibió del campo '".$indice."' el dato ".$dato."
";
?>
En este ejemplo, tenemos un formulario de nombre e id "form1" como el de tu caso, el método de envío de datos será "post" y el archivo que recibirá los datos se llamará "recibe.php", dentro del form están los campos "nombre" y "edad" además de un botón que al darle clic, invocará a la función "validar" y se le enviará el form en el que se encuentra el botón. En la función "validar", recibimos el form en la variable "formulario" y declaramos la variable "validacion" empezando con el valor cero. Luego, con ayuda de un bucle FOR, recorremos todos los elementos del formulario, uno por uno, apoyándonos de una condición IF para verificar si en cada elemento se han ingresado datos, esto se logra a través de "formulario.elements[i],value.length", formulario es el form, elements indica que estamos evaluando sus elementos, [i] toma el elemento equivalente del form en el bucle FOR, value indica el contenido del elemento y length la longitud del contenido, si la longitud es igual a cero, es decir, no se ha escrito nada, se muestra un mensaje de alerta indicando que se deben ingresar datos en dicho campo, mostrando el nombre del campo para lo cual te sugiero que a los elementos les pongas nombres con los que los usuarios se familiaricen, los ids manéjalos a tu antojo, luego le damos el enfoque a dicho elemento para el usuario complete los datos, la variable "validacion" incrementa su valor en 1 y salimos del bucle FOR con break. Luego, verificamos el valor de la variable "validacion", si es igual a cero, es decir, si no incrementó su valor dentro del bucle FOR porque se completaron los datos en todos los campos del formulario, entonces mostramos un mensaje avisándole al usuario que se logró completar el proceso con éxito y se envía el formulario con el evento submit(). Si el valor de "validacion" es distinto a cero, es decir, aumentó su valor en el bucle FOR porque alguno de los campos del formulario permanece vacío, no se procede con el envío de datos.
En el archivo "recibe.php", se reciben los datos enviados a través del método "post" y se imprimen en pantalla.
Saludos.