About Forms in HTML...
= Index DOT Html by Brian Wilson
[bloo@blooberry.com] =
Main Index |
Top Of Tree |
Tag Index |
Tag History
- Justification for HTML Forms
- Forms are the main method (and also the oldest) for making a web
document interactive. Forms allow the input of information by a reader.
Various input methods exist to enter this information from the user such
as buttons, pull-down menus and text boxes. When a user is finished
entering information in an HTML form, they can "submit" this
information. Submitting form information can result in the creation of
dynamic web pages, the sending of e-mail, or other actions - it is all
determined by the the intent of the program that is activated to analyze
the form information.
- Form Field Types
- There are many different types of form input mechanisms. These field
types represent many of the common input methods found in paper-based
forms. All input mechanisms are bounded by delimiters which mark the
range of the form.
- Form Delimiter
- [<form>]
- Forms in an HTML document are created by using the FORM container
delimiter tags. These tags serve to encapsulate the fields of the form
and contain information on how and where to process the form contents.
These delimiters create a form of virtual Block Formatting in a
document structure (a line break is added both before and after FORM
delimiters.) This formatting does not add any semantic meaning to the
structure (like Block Formatting does) but is rather a side-effect of
its nature (like with the TABLE structure.) These delimiters also serve
to allow multiple forms to exist in a single document.
- Form Fields
- [<selection list>,
<textarea>,
<input type=text>,
<input type=hidden>,
<input type=checkbox>,
<input type=radio>,
<input type=password>,
<input type=file>,
<input type=image>,
<input type=reset>,
<input type=submit>]
- It is up to the author to determine which of the various field types best suits
their needs in terms of easy usability for a reader and suitability for processing by the
destination program.
-
- CGI Binaries
- When a form is submitted for evaluation, the information that has
been entered is encoded and sent to a program invoked by the submission
process. This program evaluates and processes the information entered in
the form, and takes actions based on the input. This information transfer
method is called the "Common Gateway Interface" (CGI) - a
standard for external programs to interface with HTTP servers.
The program used to analyze the form data is called a "Common Gateway
Interface Binary" (CGI-Bin for short.) A CGI-bin program can be
written in any language that allows it to be executed on a server system,
such as C/C++, Fortran, Perl, Python, shell scripts, TCL, AppleScript, etc.
Many types of information can be entered via an HTML forms interface, but
it is always up to this CGI-Bin program to make sense out of what is
received and react accordingly.
While it is within the scope of these documents to discuss the HTML side of
forms creation, any explanation of how to write a CGI-Bin program would
definitely be a separate matter. Please look to the Related Sites section
below for sites that cover this topic.
Related Sites
- Official References
- ftp://ds.internic.net/rfc/rfc1866.txt
- RFC 1866: The HTML 2.0 specification (plain text)
- http://www.w3.org/pub/WWW/MarkUp/html-spec
- The web version of the HTML 2.0 (RFC 1866) specification
- http://www.w3.org/pub/WWW/MarkUp/Wilbur/
- The HTML 3.2 (Wilbur) proposal
[Includes all HTML 2 form elements in common use]
- http://www.w3.org/pub/WWW/MarkUp/Cougar/HTML.dtd
- The experimental HTML (Cougar) draft
[Demonstrates some of the directions HTML is taking - including new options for form fields]
- http://home.netscape.com/assist/net_sites/html_extensions_3.html
- Netscape Extensions to HTML 3.0
[mentions the use of File Upload (INPUT TYPE=file)]
- http://www.microsoft.com/workshop/author/newhtml/htmlr020.htm
- Internet Explorer 3.0 Tag reference
[Details form field usage supported in 2.0 and 3.2 as well as a new INPUT TYPE=textarea not covered here.]
- Tutorials
- http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/fill-out-forms/overview.html
- Mosaic for X version 2.0 Fill-Out Form Support
- http://hoohoo.ncsa.uiuc.edu/cgi/forms.html
- NCSA's "Decoding FORMs with CGI" tutorial
- http://robot0.ge.uiuc.edu/~carlosp/cs317/cft.html
- Carlos' Forms Tutorial
- http://www.webcom.com/~webcom/html/tutor/forms
- WWW Fill-out Forms Tutorial
- http://www.utoronto.ca/webdocs/HTMLdocs/NewHTML/forms.html
- The Information Commons Introduction to HTML: Forms
- Other Related Links
- http://www.research.digital.com/nsl/formtest
- Digital Corp. HTML Form Testing
- http://www.yahoo.com/...../Forms/
- Yahoo's HTML Forms section
Boring Copyright Stuff...