The problem with this and Brad's solution is that the rest of the form's values get lost when you re-write the header, no matter whether it is a get or a post form. For example, I have two pages, testing.php with contains:
<?
switch ($sub) {
case "1": header("location:test.php");
case "2": header("location:test.php");
case "3": header("location:test.php");
case "4": header("location:test.php");
}
?>
<form method=post>
<input type="submit" name="sub" value="1">
<input type="submit" name="sub" value="2">
<input type="submit" name="sub" value="3">
<input type="submit" name="sub" value="4">
</form>
and test.php which only contains:
<?=$sub?>
and $sub is lost in the header rewrite.
D