in reply to POST vs GET & their intermingling.

I was on a job that had this. The (front-end) site was just one big ol' CGI application that had $ENV{QUERY_STRING} parsed up at the very top before the request was handed off to other perl modules. It wasn't so bad -- sort of elegant, actually -- it just stuffed everything into $cgi->param( $key => $value ); pairs so it was essentially transparent to the developers.

Still, with careful desgin, it probably isn't necessary. But if you need (or want) to do it, I certainly wouldn't avoid it.