CGI Programming Using Perl Training Course – PRL480
This course bridges the gap between using HTML to create static Web pages and using Perl CGI scripts to create dynamic Web pages. The course emphasizes using the Perl 5 CGI library routines to process HTML forms by providing extensive working examples and by students writing applications to illustrate the concepts presented. This course is not intended to be a substitute for a Perl programming course.
CGI Programming Using Perl Training Course
CGI Programming Using Perl – PRL480 – 3 Days Request a Class Date
This course bridges the gap between using HTML to create static Web pages and using Perl CGI scripts to create dynamic Web pages. The course emphasizes using the Perl 5 CGI library routines to process HTML forms by providing extensive working examples and by students writing applications to illustrate the concepts presented.
Course ID: PRL480 Duration: 3 days
Audience: Web site developers wanting to create interactive Web pages.
Prerequisites: Familiarity with HTML forms. Programming experience is required. Basic UNIX skills and the ability to use VI or a basic text editor are also required
CGI Programming Using Perl Training Topics
- TCP/IP and Ports
- DNS vs. Hosts Files
- Servers and Clients
- Client/Server Protocols
Browsers and Servers
- URLs
- WEB Browsers and Servers
- The Hypertext Transfer Protocol
- HTTP Requests and Responses
- HTTP Headers
- HTTP Requests
- Mime Types
Introduction to CGI
- HTML Tag Stucture
- HTML Document Structure
- URLs and CGI
- CGI Programs
- Running and Debugging from the Command Line
- Running and Debugging from a Browser
- Handling an HTML Form with CGI
- Generating HTML
CGI and Perl
- Perl
- Perl Programs
- Why Use CGI.pm (and Where is It?)
- Running and Debugging from the Command Line
- Generating HTML with CGI.pm
- Running and Debugging from a Browser
Generating HTML
- Introduction to CGI.pm
- How to use CGI.pm Online Documentation
- CGI.pm Rules for General HTML Tags
- CGI.pm Rules for HTML Form Tags
- Named vs. Positional Parameters in CGI.pm
Generating Forms
- General Structure of HTML Forms
- Form Element Tags
- Pushbuttons
- Radiobuttons
- Checkboxes
- Popups and Listboxes
- Textfields, Passwords, and Textareas
CGI Data Flow Architecture
- URL Encoding and Decoding
- Data Flow Between Browsers and Servers
- GET vs. POST
- Which to Use?
- CGI Environment Variables
- Accessing CGI Environment Variables
- Static Forms
- Dynamic Forms
- Controlling Flow with User Input
- Accessing Form Data Using CGI.pm
- The param Method of CGI.pm
- Sticky Widgets
- Validating Input from the Browser
- Command Line Debugging
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 and Flat-File Databases
- Perl DBM Interface
- Perl DBI/DBD Interface
- 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 Server Push
- Client Pull
- The GD.pm Module
CGI Security Issues
- Browser to Server Security Issues
- CGI Security Issues
- CGI Interaction with the Operating System
- Database / File System Overflow
- CGI and User Authentication
Appendix 1 – Overview of Perl
- What is Perl?
- Running Perl Programs
- Sample Program
- Another Sample Program
- Yet Another Example
Appendix 2 – Perl Variables
- Three Types of Variables
- Variable Names and Syntax
- Variable Naming
- Lists
- Scalar and List Contexts
- Hashes
- Hash Functions
Appendix 3 – Flow Control
- Simple Statements
- Simple Statement Modifiers
- Compound Statements
- The next, last, and redo Statements
- The for Loop
- The foreach Loop