http://www.perlmonks.org?node_id=749029


in reply to Mixing POST and GET with CGI::Application

CGI::Application uses CGI.pm behind the scenes so if you don't find something in the docs look there as well. In particular I think the section on MIXING POST AND URL PARAMETERS is what you need.

Based on that information, you can write a function like this:

# Called before CGI::App dispatches to a runmode sub cgiapp_prerun { my ($self) = @_; # $self->mode_param so we don't have to go back and change this if + we # ever decide to use something other than rm if ($self->query->url_param($self->mode_param)) { # prerun_mode lets you change CGI::Apps notion of the current +runmode $self->prerun_mode($self->query->url_param($self->mode_param)) +; } return; }

Actually thats kind of overkill. A simpler solution would be to remove rm=mode2 from the forms action and include a hidden field called 'rm' with value 'mode2' in the form body instead.

Also for debugging look into CGI::Application::Plugin::DebugScreen and CGI::Application::Plugin::DevPopup.

--
જલધર