At 9:36 AM -0700 8/29/01, Rasoul Hajikhani wrote:
>Hello,
>I already have asked this question and got an answer for it, so please
>accept my forwarded apologies. However, I was trying something else and
>got stuck. I know in order to pass around query string, or form data,
>pnotes may be used. However, I am trying something else and it does not
>seem to work!
>
> $r = Apache::Request->new($r);
> # check for some condition
> if ($condition)
> {
> my $previous_uri = $r->param('previous_uri');
>
> my $content = $r->param();
>
> $r->method_number(M_GET);
> $r->method('GET');
>
> $r->headers_in->unset("Content-length");
>
> $r->args($content);
>
> $r->internal_redirect("$previous_uri");
> }
So your goal is to turn a post request into a get request using an
internal redirect.
>However, in my called handler, no Post data can be read. Can any one
>tell me why is that?
>Any comments welcomed...
param does not work like args, and $content in this example will
return the number of param keys (IIRC).
I think you want
my $content = join('&',map{$_."=".$r->param($_)}($r->param));
Which should solve your problems (I think).
Rob
--
"A good magician never reveals his secret; the unbelievable trick
becomes simple and obvious once it is explained. So too with UNIX."