CGI/Perl Fundamentals : Programming Common Gateway Interface & Perl
Course Description
Overview: This two-day course provides an in-depth understanding and hands-on knowledge of the capabilities of the de facto Internet client-server communications protocol: Common Gateway Interface (better known as CGI).
In this course, you will learn about the specifications of the CGI protocol, details regarding its operation, and how to use the Perl programming language to perform common and powerful CGI communications and processing tasks on a Web server.
To get the most from this course, you should have a thorough understanding of and experience with HTML 4.0. Experience with a programming language is not necessary, but will speed your progress.
Prerequisites: To ensure your success, we recommend you first take the following Element K course or have equivalent knowledge:
A solid knowledge of HTML 4.0, including forms and form properties, is assumed. In addition, students should be familiar with the process of uploading files to a Web server via FTP (File Transfer Protocol).
Performance-Based Objectives
Lesson objectives help students become comfortable with the course, and also provide a means to evaluate learning. Upon successful completion of this course, students will be able to:
Course Content
Lesson 1: Introduction to CGI
Topic 1A: CGI: Beyond HTML
Topic 1B: How a Web Server Functions
Topic 1C: The CGI Protocol
Topic 1D: CGI Programming Languages
Lesson 2: Introduction to Perl
Topic 2A: History of Perl
Topic 2B: Perl Advantages & Disadvantages
Topic 2C: The Perl Interpreter
Topic 2D: Perl File Conventions
Topic 2E: Using Perl on UNIX
Lesson 3: How Perl Talks to the Browser
Topic 3A: Perl / Browser Communication
Topic 3B: Making a CGI Look Like a Web Page
Topic 3C: Print Using "qq"
Topic 3D: Printing Multiple Lines
Lesson 4: Perl Variables
Topic 4A: Variables
Topic 4B: Scalars
Topic 4C: Arrays
Topic 4D: Hashes
Lesson 5: Perl Loops & Logic
Topic 5A: Loops
Topic 5B: Logical Operations
Topic 5C: if…
Topic 5D: Else & elsif
Lesson 6: How the Browser Talks to Perl
Topic 6A: Environment Variables
Topic 6B: GET & POST
Topic 6C: Using CGI.PM
Topic 6D: Debugging CGIs
Lesson 7: Storing & Retrieving Information
Topic 7A: Storing Data
Topic 7B: Appending Data
Topic 7C: Reading Data
Lesson 8: REGEX: The Match Operator
Topic 8A: Introduction to Regexes
Topic 8B: The m// Operator
Topic 8C: i Modifier
Topic 8D: Special Characters
Topic 8E: Character Classes
Topic 8F: Parentheses
Lesson 9: REGEX: The Substitute Operator
Topic 9A: s/// Operator
Topic 9B: More Modifiers
Topic 9C: Backreferences
Topic 9D: tr/// Operator
Lesson 10: Subroutines
Topic 10A: Organizing Data
Topic 10B: Scoping
Topic 10C: Functions
Lesson 11: CGI Techniques
Topic 11A: Outputting Graphics
Topic 11B: Outputting PDF
Topic 11C: Redirecting the Browser
Topic 11D: Using HTML Templates
Topic 11E: Cookies
Topic 11F: Sending E-mail Using CGI
Lesson 12: CGI Security
Topic 12A: Web Server Security
Topic 12B: Writing Secure CGIs