Back to introductory class info...
Client Pull Example #1 | This page simply reloads every 5 seconds (forever). It would be more interesting if each page included something different (e.g. a random image or different set of links). A stop link is included to prevent infinite looping... The source is available in plain-text form. |
---|---|
Client Pull Example #2 | Three pages load one another in sequence, once every 5 seconds (forever). This could (and sometimes is) used to achieve cheap animation. A stop link is included to prevent infinite looping... The source for one of the HTML documents is available in plain-text form. |
Server Push Example #1 | This page automatically reloads 7 times, then stops. It is implemented via a CGI program written in C. You can make this one stop just by clicking your browser's [Back] button. |
Server Push Example #2 | Netscape's example page, with a Mozilla animation. Includes the C source used to pull (push?) it off... |
Tables are great for displaying tabular data, like tables and charts. Take this Web page, for example. But they are also very useful for general page layout control. With creative use of tables (often using hidden borders) you can force the browser to display the text and images on the screen the way YOU want, instead of the way the browser wants! | |
<TABLE> | Encloses your entire table, and identifies it as such. Documents may contain multiple tables, and tables may be nested within one another. |
---|---|
<CAPTION> | Labels a table (or figure). |
<TR> | Container for a row of table cells defined with the <TH> or <TD> elements. |
<TH> | Defines a 'header' for a row or column. By default the text in a <TH> is centered (and often made bold as well). |
<TD> | (table data) Defines a table cell in a row or column. |
A good, short description of these tags and their attributes may be found in Netscape's Tables as implemented in Netscape 1.1. It's a bit dated, but still useful. |
The Frames feature of Netscape Navigator 2.0 (and now Internet Explorer 3.0 too) is a sophisticated page-presentation capability that enables the display of multiple, independently scrollable frames on a single screen, each with its own distinct URL. Frames can point to different URLs as well as be targeted by other URLs all within the same screen. Developers can incorporate banners, ledges, tables of contents, and display panels into their designs, allowing users to scroll through multiple sites simultaneously, submit database queries in one frame and receive back instant results in another and even freeze regions of the screen in place while the user scrolls through information on a page. | |
<FRAMESET> | Replaces the <BODY> tag, and identifies the individual frames which will make up the document when it is viewed. |
---|---|
<FRAME> | Defines a single frame in a <FRAMESET>. |
<NOFRAMES> | Used to create content viewable by browsers which do not support Netscape's Frames enhancement... |
The TARGET attribute gives you some control over where the new page appears when the user clicks on a link in their document. It is not an HTML tag, but can be used within the <A>, <BASE>, <AREA>, and <FORM> tags. The general form is: TARGET="window_name" and the result is that the link will be loaded into a window of the given name. Valid window names start with an alphanumeric character or are one of the 4 magic target names shown below. | |
<A HREF="url" TARGET="Second"> | The new page will appear in the window called "Second", which will be created if it isn't already active and visible. |
---|---|
<BASE TARGET="Second"> | Linked-to pages will appear in the window called "Second", which will be created if it isn't already active and visible. This may be overridden by TARGET attributes of individual anchor tags. |
<AREA TARGET="Second"> | The linked-to page will appear in the window called "Second", which will be created if it isn't already active and visible. |
<FORM TARGET="Second"> | The form tag normally displays the results of a form submission in the same window the form was submitted from. By adding the TARGET attribute to the form tag, the result of the form submission is instead loaded into the targeted window. |
'Magic' target names:
|
FORMs are used to collect data to be passed to a CGI program for processing. The CGI program (usually) then selects or generates a document (an HTML file) and sends it to the browser... | |||||||||
<FORM> | Used to delimit a data input form. Multiple forms a allowed, but FORMs may not be nested. | ||||||||
---|---|---|---|---|---|---|---|---|---|
<INPUT> | Used to represent a field whose contents may be edited by
the user. Input types include: CHECKBOX, HIDDEN, IMAGE,
PASSWORD, RADIO, RESET, SUBMIT, and TEXT.
<SELECT>
| Allows the user to chose one of a set of alternatives
described by textual labels.
| <OPTION>
| Allowed only within a <SELECT> element. It represents one
choice.
| <TEXTAREA>
| Allows the user to enter more than one line of text (often
used in email forms, or for comments on an order form).
| I've created two example FORMs:
|
|
Introduction to CGI | NCSA's introduction to the Common Gateway Interface, with links to more detailed information and examples. |
A FAQ on CGI | A somewhat dated Frequently Asked Questions list on CGI. |
CGI Environment Variables | A description of the ENVIRONMENT variables set by the server when it executes a CGI program. |
"C" CGI Subroutines | Tom Boutell's library of C subroutines for doing CGI programming -- these routines greatly simplify the low-level detail programming necessary to do CGI work... |
Mooncrow's CGI/PERL Source Page | An excellent collection of links to various resources for doing CGI programming (forms, page counters, mail stuff, index building, imagemaps, perl, perl resources, etc.). |
Another CGI subroutine library | Eugene Kim's library of C subroutines (similar to Boutell's above). |
CGI Programming for the MacIntosh | Grant Nufield's collection of CGI stuff for the Mac. |
Yahoo's take on FORMS | What you would get if you went to Yahoo looking for information about FORMS. |
MIME Documentation | A description of the Multipurpose Internet Mail Extensions (MIME) document types. |
I've created two examples of CGI programs written in C.
| |
I've also created an example CGI program written in Visual Basic.
|
Sun | Sun's Web site. Here's where you can get the latest distribution of the Java Developer's Kit (it's about 10mb if you get the documentation too). |
Gamelan | The 'main' (non-Sun) source of Java applets, information, links to sites specializing in Java, news, new stuff, etc. This site uses Netscape's FRAMEs. [Note: In case you were wondering, "Gamelan" is the name of the language spoken on the island of Java] |
Author: Marc Lewis (marcl@micapeak.com)