[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cgiapp] Re: passing in a param from another runmode


Mark Stosberg wrote:
I have a runmode that goes back to "home" when finished:

 $self->home;

 I would like to send a flag back to "home" (0 for bad and 1 for good) so  a
param in home can be set.
>From the runmode (method) you want to return back to home from, just
return the output of the home method, like "return
$self->home($err_code);" (assuming the home method does a
$tmpl_obj->output().).

The next problem is if you want the URL of the resulting page to look
like the user is on the home page (in case they bookmark it). If so,
you have to set the header_type to redirect (from the runmode (method)
you want to return to home) to cause the home runmode to be invoked.
If you want to pass a value, it would have to be on the URL as a
parameter, or kept as part of the session information for that
visitor, or stuffed in a cookie.

After trying different variations, I agree with Mark Fuller here, that passing values
through the URL or session is the best way to go.  Benefits include:

- The result is bookmarkable.
- The target page is easier to test, because  you can go directly to that state with a GET,
  rather than first going through the other page.

I do recommend only passing boolean flags to note that you've changed state:

 index?update_success_p=1

This keeps you in total control of the resulting output, while passing anything that then
gets displayed back as HTML is opening you up for an XSS attack.

    Mark

That is what I did.  :-)

Robert


#####  CGI::Application community mailing list  ################
##                                                            ##
##  To unsubscribe, or change your message delivery options,  ##
##  visit:  http://www.erlbaum.net/mailman/listinfo/cgiapp    ##
##                                                            ##
##  Web archive:   http://www.erlbaum.net/pipermail/cgiapp/   ##
##  Wiki:          http://cgiapp.erlbaum.net/                 ##
##                                                            ##
################################################################


Mail converted by mhonarc 2.6.15
This archive provided courtesy of JSW4.NET, Internet Hosting Services for Small Business.