>

HTML METHOD = GET

GET sends the data as part of the URL. For example, suppose you enter the value "West Rochester" in this form below:

This Code Makes This
<FORM METHOD=get ACTION="/cgi-bin/mycgi.pl">
town: <INPUT NAME="town"><BR>
<INPUT TYPE=SUBMIT>
</FORM>
town:
(Form is not live)

The value entered in the "town" field is tacked on to the end of the CGI's URL like this:

http://www.domain.com/cgi-bin/mycgi.pl?town=West+Rochester

When the form data (or "query data") is added to the end of the URL it is "URL encoded" so that the data can be used in a standard URL. The neat thing about URL encoding is that each different query to the CGI has a different URL. Those unique URLs can be used directly in links without any form being involved. For example, the URL above can be used to create a link to exactly the same CGI results:

<A HREF="http://www.domain.com/cgi-bin/mycgi.pl?town=West+Rochester">West Rochester</A>

The amount of data that can be sent with a URL is limited. GET is good for short forms (ten or fewer fields and no <TEXTAREA ...> or file uploads).

METHOD=POST