Hola:
Voy a ponerme pesado con la semántica de las etiquetas y los elementos de la web (por cierto, voy a reportar este tema porque no he visto nada php)
location.href es 100% javascript... igual que botones (que no sean submit o reset) ... y es para enlazar, no tiene nada que ver con un formulario.
Para pasar datos entre páginas están justamente los formularios y se deben enviar por botones submit o la función submit asociada al formulario... (siempre será preferible el uso del botón, por si el cliente tiene javascript deshabilitado)
Ya que este tema está en el foro php, voy a dar una idea para que tenga sentido el mensaje en este foro...
Poniendo un action a una página que distribuya el formulario a la página adecuada y darle un name y un value al botón de envío... y que sea del tipo submit...
<form action="recepcion.php" method="post" >
<input type="submit" name="envio" value="envio1" />
y en recepcion.php
$enviar = $_POST["envio"];
header("Location: ".$enviar.".php");
Espero no haberme equivocado en la sintaxis...
Saludos