Beefy Boxes and Bandwidth Generously Provided by pair Networks vroom
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Re: Calling a sub from a button

by cal (Beadle)
on Oct 25, 2002 at 22:08 UTC ( #208161=note: print w/ replies, xml ) Need Help??


in reply to Re: Calling a sub from a button
in thread Calling a sub from a button

I'm sorry, I thought I mentioned that the call was from a script. I should have said a CGI script.


Comment on Re: Re: Calling a sub from a button
Re: Re: Re: Calling a sub from a button
by George_Sherston (Vicar) on Oct 25, 2002 at 23:43 UTC
    In that case you would need the form action to be the script, and submit another field which the script uses to find the right subroutine. You could use a hidden field. But a nice way to do it IMHO is with the submit button. Since the value field in a Submit button only gets submitted with the form when that particular button is pressed, you have the option of different buttons within the same form. For example, in the html:
    <FORM ACTION="yourscript.pl" METHOD="POST"> <!-- insert other form inputs here --> <INPUT TYPE="SUBMIT" NAME="Action" VALUE="Run Foo"> <INPUT TYPE="SUBMIT" NAME="Action" VALUE="Run Bar"> <INPUT TYPE="SUBMIT" NAME="Action" VALUE="Store Event"> </FORM>
    Then in the script (in this example saved as yourscript.pl) you could have something like
    use CGI qw/:standard/; if (param('Action') and param('Action') eq 'Run Foo') { foo(); } elsif (param('Action') and param('Action') eq 'Run Bar') { bar(); } elsif (param('Action') and param('Action') eq 'Store Event') { store_event(); } else { print header, start_html('Ack!'), h1 'you have to call this from the form!', end_html; }


    George Sherston

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://208161]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (10)
As of 2014-04-21 14:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (495 votes), past polls