- Introduction and Overview
- What This Tutorial Is Not
- What This Tutorial Will Provide
- The Layout of This Tutorial
- CPAN History
- CPAN Layout
- A Perl5 Overview and Tutorial
- Usability and Simplicity
- Lexical Scoping
- Data Structures
- Modules and Libraries, Extensible and Embeddable
- Enhanced Safety and Security
- Other New Features in Perl5
- References
- The Short History of Perl Extensions
- A simple extension module.
- Using the simple extension module.
- The Customer module.
- Using the Customer module.
- Object-Oriented Techniques: Subclassing the Customer module
- Using the MyCust subclass.
- Overriding Customers methods.
- Using the overridden method in MyCust.
- Augmenting base class methods.
- Practical Issues for Using Modules: Downloading and Installation
- Security on the Web
- Server Configuration Options
- File Permissions Setup and Monitoring Changes in the System
- General ConsiderationsGlobal versus Local Configuration of Permissions
- Directory Access Configuration
- Whos There? Configuring Client IP/Domain Restrictions
- Whos There? User/Group Verification
- Changing Passwords from the Web
- Monitoring Userids
- General Considerations: Dos and Donts
- Tools for Executing CGI Safely
- The Safe Module
- Transaction Security
- Simplified PGP Transactions Using the PGP Module
- Running httpd in the chroot(2)Environment
- Monitoring Filesystem Changes,Network Security, and Analyzing Password Security
- HTML FormsThe Foundation of an Interactive Web
- Text and Password Fields
- Checkboxes
- Hidden Fields and Submit Buttons
- Image Buttons
- Listboxes
- Popup Menus
- File-Upload Fields
- Image Maps
- Generating HTML On-the-Fly with Perl5
- Perl code for customer questionnaire.
- Included Files
- parsessi.pl CGI program for including and parsing a .shtml file.
- Other Elements Within Elements
- Perl code that emits a form formatted using the <TABLE> object.
- Other Objects: Applets, Images, Animation, and the <EMBED> Tag
- What Forms Cannot Provide
- HTTP Transactions
- The Connection
- The Request
Table 5.1. HTTP FullRequest methods.
- Table 5.2. URI Characters That Must Be Encoded.
- Table 5.3. Headers.
- What Happens after the Request
- The Response
- CGI.pm versus Individual libwww Modules
- Using CGI.pm with forms
- Open a new browser window
- Upload a file to the server
- Using the HTTP::Request Module Directly
- MIME Documents
- The Content-Type Header Field
- How MIME Data Is Encoded, Q Quoted-Printable Encoding and Using MIME::Base64
- MIME attachment, Using MIME::QuotedPrint
- Determining Fields of Information
- Setting Up the Database
- Perl subroutine for printing the guest book form.
- Perl subroutine to process the form data.
- CGI program to display the guest list.
- Setting Up the Web Server to Log Access, Parsing the Access Log
- CGI script that displays a graphical hit counter.
- Parsing the AgentLog
- Clickable Maps
- Creating the Map
- Subroutine to return a search form.
- Subroutine to search for a list of words.
- Displaying the Results with A simple CGI searching program
- Displaying the Form
- Subroutine to print a license plate form.
- Subroutine to search for a specific license plate in the database.
- Subroutine to print the information found about the license plate.
- Subroutine for sending e-mail notification.
- Database Access
- DBI
- Records to be imported into database
- Program that imports data into an mSQL database
- Create an HTML Index from a Database
- Program that writes HTML from the database
- about a single item in the database.
- Searching the database for keywords
- Open Database Connectivity (ODBC)
- AgentsWeb Scanning, Mirroring, and Background Tasks
- HTML returned by the Security APL Quote Server.
- Automatic stock quote retriever (getquote.pl).
- Subroutine to extract the quote information.
- General purpose URL retriever going through a firewall.
- Generating Web Indexes
- The crawlIt() main function of the Web spider.
- Converting a relative URL to an absolute URL.
- Writing the title and URL to the log file.
- Mirroring Remote Sites
- Modified function to convert relative URLs to absolute URLs.
- Modified crawlIt() function for mirroring a site.
- Search Engines
- On-Site Searching with Glimpse
- GlimpseHTTP
- Search the Web with WWW::Search
- a real world example of WWW::Search.
- Datebooks, Calendars, and Scheduling on the Web
- HyperCalA Modular Perl5 Calendar and Datebook
- hypercal.cgi
- Variables and configuration file for HyperCal.
- Displaying Appointments on a Specific Day: disp_day.cgi
- add_date.cgi.
- password.change.
- Multimedia
- GD::Image Module
- GD::Polygon Module
- GD::Font Module
- Hangman Using the GD Module
- Server Push Animation Techniques
- Embedding AVI, QuickTime, WAV, and GIF89a within HTML
- Implementation Issues
- Dynamic Generation of Forms
- MiniVend Package
- Installation and Configuration
- Use and Customization
- Setting Up Your minivend.cfg File
- The main catalog page.
- The search page.
- The browse page.
- The results display page.
- The order page.
- Frames and Additional Tools for Administration of Your Site
- Security and General Archive Management Considerations
- Planning, Design,and Layout
- Revision Control
- Summary of Archive Management Issues
- General Parsing Issues
- simpleparse.
- simpleparse-net.
- relativize.
- Parsing HTTP Logfiles
- GD_Logfile.pm.
- GD_Logfile.test.
- Converting Existing Documentation to HTML
- Making Existing Archives Available via HTTP
- Client-Side Perl
- Embedded Perl Interpreter in a
Web Browser - Executing Perl as a Helper Application
- HelperAppPerl.
- PenguinA New Paradigm in Remote Execution
- Parsing Netscape History Files
- The Need for an Extended Session
- A very simple calculator
- A personal notepad.
- A Web-based command shell.
- Embedded ObjectsAn Internet Proposal
- Netscape Cookies and Other Netscape Feature Tags
by
updated