For an example of a CGI application, suppose you create a guestbook for your website. The guestbook page asks users to submit their first name and last name using a fill-in form composed of two input text fields. Figure 9-1 shows the form you might see in your browser window.
The HTML that produces this form might read as follows:
<HTML><HEAD><TITLE>Guestbook</TITLE></HEAD> <BODY> <H1>Fill in my guestbook!</H1> <FORM METHOD="GET" ACTION="/cgi-bin/guestbook.pl"> <PRE> First Name: <INPUT TYPE="TEXT" NAME="firstname"> Last Name: <INPUT TYPE="TEXT" NAME="lastname"> <INPUT TYPE="SUBMIT"> <INPUT TYPE="RESET"> </FORM>
The form is written using special “form” tags, as follows:
The <form>
tag defines the method used for the form (either GET or POST) and
the action to take when the form is submitted—that is, the URL of
the CGI program to pass the parameters to.
The <input>
tag can
be used in many different ways. In its first two invocations, it
creates a text input field and defines the variable name to
associate with the field’s contents when the form is submitted.
The first field is given the variable name firstname
and the second field is given
the name lastname
.
In its last two invocations, the <input>
tag creates a “submit”
button and a “reset” button.
The </form>
tag
indicates the end of the form.
When the user presses the “submit” button, data entered into the
<input>
text fields is passed
to the CGI program specified by the action
attribute of the <form>
tag (in this case, the
/cgi-bin/guestbook.pl program).
18.218.3.204