Passing Parameters via CGI
You don’t need a form to pass a parameter to (most) CGI
programs. This feature is convenient because it lets programs be
called via simple links, not just by full-blown forms. To test this
out, take the original URL and add a question mark followed by the
parameter name, an equal sign, and the value desired. For example,
the following URL would call the ice_cream
script with the flavor
parameter set to the value
mint
:
http://www.SOMEWHERE.org/cgi-bin/ice_cream.plx?flavor=mint
When you point your browser at this URL, the browser not only
requests the web server to invoke the
ice_cream.plx program, but it also passes the
string flavor=mint
to the program. Now it’s
up to the program to read the argument string and pick it apart.
Doing this properly is not as easy as you might think. Many programs
try to wing it and parse the request on their own, but most
hand-rolled algorithms only work some of the time. Given how hard it
is to get it right in all cases, you probably shouldn’t try to
write your own code, especially when perfectly fine modules already
handle the tricky parsing business for you.
Enter the CGI.pm module, which always parses the incoming CGI request correctly. To pull this module into your program, merely say:
use CGI;
somewhere near the top of your program.[99]
The use
statement is somewhat like a
#include
statement in C programming in that it pulls in code from another file at compile time. But it also allows optional arguments specifying which ...
Get Learning Perl on Win32 Systems now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.