OFFICIAL GUIDE TO PROGRAMMING
WITH CGI.PM
Example Scripts from the Book
Here is the source /cgi-bin/code/ for all the examples from the book. Each example
is listed by chapter, listing number, and page number. You'll find two links
for each example. The top link will run the script so that you can try it
out for yourself. The bottom link will take you to the source /cgi-bin/code/ for the
script. You may read through it online or download it to your own machine.
There are several ways to download
a script's source /cgi-bin/code/. One way is to choose File->Save As...
from the browser's menu when the script appears on the screen. Another
way is to simply cut and paste from the browser window to your favorite
word processor. Some browsers also offer you the ability to save the contents
of a link by right-clicking, control-clicking, or by command-clicking,
depending on the browser software and the type of computer you are using.
There are no restrictions on
your use of this source /cgi-bin/code/. Feel free to redistribute it, modify it
for your own purposes, or incorporate it into your own projects. Have
fun!
Chapter 2: CGI.pm Basics
- plaintext.pl:
A dynamic text-only page (page 22).
- Run
the script
- See
its source /cgi-bin/code/
- plaintext2.pl:
Multiple formatted lines (page 24).
- Run
the script
- See
its source /cgi-bin/code/
- plaintext3.pl:
As above, but with simpler /cgi-bin/code/ (page 25).
- Run
the script
- See
its source /cgi-bin/code/
- plaintext4.pl:
Star out all 4-letter words from a file (page 26).
- Run
the script
- See
its source /cgi-bin/code/
- See
the unmodified file
- time1.pl: Print
the current local time (page 27).
- Run
the script
- See
its source /cgi-bin/code/
- time2.pl: A different
way to print the current local time (page 30).
- Run
the script
- See
its source /cgi-bin/code/
- time3.pl: As before,
but with an inline image (page 32).
- Run
the script
- See
its source /cgi-bin/code/
- vegetables1.pl:
Nested lists (page 34).
- Run
the script
- See
its source /cgi-bin/code/
- vegetables2.pl:
Same thing, more concisely (page 37).
- Run
the script
- See
its source /cgi-bin/code/
- vegetables3.pl:
An HTML 3 table(page 39).
- Run
the script
- See
its source /cgi-bin/code/
- htmlize.pl: Convert
text into HTML(page 41).
- Run
the script
- See
its source /cgi-bin/code/
- See
the unmodified table
- time4.pl: An interactive
clock (listing 2.1, page 48).
- Run
the script
- See
its source /cgi-bin/code/
- advice.pl: Take
action based on button presses (listing 2.2, page 67).
- Run
the script
- See
its source /cgi-bin/code/
- loan.pl: Multi-page
questionnaire (listing 2.3, page 70).
- Run
the script
- See
its source /cgi-bin/code/
- guestbook.pl:
A guestbook (listing 2.4, page 79).
- Run
the script
- See
its source /cgi-bin/code/
- See
the raw guestbook file
- redirect.pl: Redirect
browser elsewhere (page 91).
- This script will redirect
you to the book's home page
- Run
the script
- See
its source /cgi-bin/code/
- random_pict1.pl:
Select a picture randomly (listing 2.4, page 92)
- Run
the script
- See
its source /cgi-bin/code/
- See
the directory of pictures
- random_pict2.cgi:
A more portable version of above (listing 2.5, page 94)
- Run
the script
- See
its source /cgi-bin/code/
- tm.pl: Add ®
symbol to trademarks (listing 2.6, page 96)
- Run
the script
- See its
source /cgi-bin/code/
- See
the unmodified target file
- confidential.pl:
Implement a new <CONFIDENTIAL> HTML tag (listing 2.7, page 98)
- Run
the script
- See
its source /cgi-bin/code/
- See
the unmodified target file
- See
the unmodified target file's source
Chapter 3: Advanced Tricks
- carpout.pl: Echo
runtime errors to the browser (page 107).
- When you run this, the
script will display an error message.
- Run
the script
- See
its source /cgi-bin/code/
- quadraphobia.pl:
A clickable image map (page 118XX).
- Run
the script
- See
its source /cgi-bin/code/
- graffiti.pl: Saving
session state to a file (listing 3.1, page 122).
- Run
the script
- See
its source /cgi-bin/code/
- customizable.pl:
A customizable page (page 130.
- Run
the script
- See
its source /cgi-bin/code/
- graffiti2.pl:
A cleaner way of saving session state to a file (listing 3.2, page 132).
- Run
the script
- See
its source /cgi-bin/code/
- cookie.pl: Save
user preferences in a cookie (listing 3.3, page 144).
- Run
the script
- See
its source /cgi-bin/code/
- upload.pl: Upload
a file and calculate its length (listing 3.4, page 152).
- Run
the script
- See
its source /cgi-bin/code/
- gate.pl: Refuse
admission between 2-3 o'clock on Sundays (listing 3.5, page 159).
- Run
the script
- See
its source /cgi-bin/code/
- frames.pl: Create
a document that uses frames to pop up a new window (listing 3.6, page
164).
- Run
the script
- See
its source /cgi-bin/code/
- side_by_side.pl:
Create side-by-side frames (listing 3.7, page 166).
- Run
the script
- See
its source /cgi-bin/code/
- javascript.pl:
Validate a form with JavaScript (listing 3.8, page 177).
- Run
the script
- See
its source /cgi-bin/code/
- nph-quote.pl:
Simulate a stock ticker (listing 3.9, page 184).
- Run
the script
- See
its source /cgi-bin/code/
- nph-push.pl: A
dynamic page using server push (page 188).
- Run
the script
- See
its source /cgi-bin/code/
|