PHPでformlから値を貰うときに$_POSTを使うのは分かるのですが、
$_POST["hoge"]=$_SESSION["mofu"]; みたいに直接代入という
方法ってプログラム上アリですか?無しですか?

この方法で確かにちゃんと動くけど明らかに使い方は間違ってるような
気がする($_POSTはformからのデータを貰う為のものと思っているから)
のです。
なぜこんなことをしたのかと言うと、前画面で入力したデータを
ターゲットのフォームに初めから入れておきたいが、ターゲット画面で
入力エラーを検知した場合は、そのエラーの箇所を空白にし、他の入力
箇所は保持したいのです。
ターゲット画面でsubmitをしたとき、呼び出される画面はターゲット画面で、
入力にエラーが無い場合はHeaderで次画面に飛ばすのです。


分かりにくい表現で恐縮ですが皆様の考えを教えてください。