Cgi with Perl Online Training Course Content
The Internet & the Web
- TCP/IP & Ports
- DNS vs. Hosts Files
- Servers & Clients
Browsers and Servers
- URLs
- The Hypertext Transfer Protocol
- HTTP Requests , Headers and Responses
Introduction to CGI
- HTML Tag Structure & Document Structure
- URLs & CGI
- CGI Programs
- Running and Debugging from the Command Line & Browser
- Handling an HTML Form with CGI
Perl
- Perl Programs
- Running and Debugging from the Command Line
- Command Line Debugging
Generating HTML
- CGI.pm’s Rules for General HTML Tags
- Named vs. Positional Parameters in CGI.pm
Generating Forms
- Pushbuttons
- Radiobuttons
- Checkboxes
- Popups and Listboxes
- Textfields, Passwords, and Textareas
CGI Data Flow Architecture
- URL Encoding & Decoding
- Data Flow between Browsers & Servers
- GET vs. POST
- CGI Environment Variables
- Accessing CGI’s Environment Variables
Processing Form Data
- Static & Dynamic Forms
- Controlling Flow with User Input
- Sticky Widgets
- Validating Input from the Browser
- Lists
- Scalar & List Contexts
- Hashes & Hash Functions
Client-side Statefulness
- Stateful vs. Stateless
- Why use Stateful CGI Applications?
- Program to Program Interaction
- Stateful Access with Hidden Fields
- Multiple Forms and Hidden Fields
- Stateful Access with Netscape Cookies
- Using Cookies with CGI.pm
- Cookie Management
Database Access
- Server-side Statefulness
- Flat-file Databases
- Structuring Text Data
- File Permissions & Flat-file Databases
- Issues with Statefulness
Additional Web Programming Features
- Extra Path Information
- Frames
- Server Side Includes (SSI)
- The exec command
- A Page Hit Counter Using SSI
- Animation Description
- Netscape’s Server Push
- Client Pull
- The GD.pm Module
CGI Security Issues
- Server Security Issues
- CGI Interaction with the OS
- Database/File System Overflow