in reply to Passing CGI parameters on new CGI

If I understand right what you want to do is redirect to a POST. Unfortunately, I can't help you there. However I have another idea to to suggest. If your concern is showing the content in the URL bar one option would be to have the script doing the redirect encrypt the query and the script on the other end decrypt it (Crypt modules). This would at least protect the data in the query-bar from prying eyes and "shoulder surfing". Something along the lines of this:
use Crypt::IDEA; my $key = pack("H32", "0123456789ABCDEF0123456789ABCDEF"); my $cipher = new IDEA $key; my $ciphertext = $cipher->encrypt(query_string());
Then build a new query-string using $ciphertext. In the second .cgi (the one redirected to) just decrypt the cyphertext and re-extract it.

Not a real elegant solution, but it may work for what you want to do.