Standard

 

CIS 2271 – Fundamentals of CGI Programming using PERL

Course Description:

Fundamentals of CGI Programming using PERL and server-Side Scripting teach students how to use Common Gateway Interface (CGI) PERL programs and scripts on a Web server.  Students will learn how to writer print-to-screen scripts, customize Web page hit counters, create and use business forms that interface with text files, manipulate data in a database, work with a relations database via Open Database Connectivity ODBC), and explore Web server security issues related to CGI.  A survey of other products such as Microsoft Active Server Pages, Netscape LiveWire, and Cold Fusion by Allaire will be discussed.  Security issues using server-side scripting will also be studied, and students will learn how to add security elements to their scripts.

 

Competency Areas:

Hours:

Use Common Gateway Interface (CGI) PERL programs and scripts on a Web server

Class

3

D. Lab

2

Write print-to-screen scripts

P. Lab/O.B.I.

0

Customize Web page hit counters

Credit

4

Create and use business forms that interact with text files

 

 

Manipulate data in a database

 

 

Work with a relational database via Open Database Connectivity (ODBC)

 

Explore Web server security issues related to CGI files

 

 

Add security elements to scripts

 

 

 

 

 

Prerequisite:  CIS 2201

Corequisite:

 

 

Course Guide

 

 

 

Competency

After completing this section, the student will:

Hours

Class

D. Lab

P. Lab/

O.B.I.

USE COMMON GATEWAY INTERFACE (CGI) PERL PROGRAMS AND SCRIPTS ON A WEB SERVER

1

0

0

 

What is CGI?

 

 

 

 

Why Use CGI?

 

 

 

 

What is PERL?

 

 

 

 

Why Use PERL?

 

 

 

 

Advantages of PERL

 

 

 

 

CGI Factors that Affect PERL

 

 

 

WRITE PRINT-TO-SCREEN SCRIPTS

4

1

0

 

Beginning a PERL Script

 

 

 

 

Incorporating HTML into PERL

 

 

 

 

Environment Variables

 

 

 

 

Pattern Matching

 

 

 

CUSTOMIZE WEB PAGE HIT COUNTERS

2

1

0

 

Creating and Using Counters

 

 

 

 

Using PERL File Input and Output

 

 

 

 

Opening and Controlling Files from Within Scripts

 

 

 

CREATE AND USE BUSINESS FORMS THAT INTERACT WITH TEXT FILES

8

4

0

 

Processing User-Entered Data and Customizing Output

 

 

 

 

Using One File to Create and Process a Form

 

 

 

 

Testing Input to Achieve Desired Results

 

 

 

 

Saving Selected Elements

 

 

 

 

Using the PERL Append Function

 

 

 

 

Retrieving and Formatting Data

 

 

 

 

Retrieving Information from a Text File

 

 

 

 

Using Pattern Matching and Substitution

 

 

 

 

MIME Types

 

 

 

 

Plug-ins

 

 

 

 

Maintaining Client State with Cookies

 

 

 

 

Introduction to the Object Design

 

 

 

 

Server, Request, Response, Application, Client, and Scope Objects

 

 

 

 

Language Purpose

 

 

 

 

Microsoft Internet Information Server (IIS) and Internet Server Application Programming Interface (ISAPI)

 

 

 

 

Virtual Directories and ASP Applications

 

 

 

 

Writing Active Server pages with VBScript

 

 

 

 

Scripting Languages and Engines

 

 

 

 

VBScript vs. JavaScript

 

 

 

 

Declaring Variables

 

 

 

 

ASP Objects

 

 

 

 

Components

 

 

 

MANIPULATE DATA IN A DATABASE

4

4

0

 

Primary Keys and Foreign Keys

 

 

 

 

Structured Query Language (SQL)

 

 

 

 

Cursors and Result Sets

 

 

 

 

Object Model

 

 

 

 

Active Date Objects (ActiveX Data Access Components)

 

 

 

 

Arrays

 

 

 

 

Registering Data Sources

 

 

 

 

Cold Fusion Pros and Cons

 

 

 

 

Cold Fusion Variables

 

 

 

 

Cold Fusion Functions

 

 

 

 

Application.cfm

 

 

 

 

Control Structures

 

 

 

WORK WITH A RELATIONAL DATABASE VIA OPEN DATABASE CONNECTIVITY (ODBC)

4

3

0

 

Benefits of Database Interaction

 

 

 

 

Retrieving Data from an Existing Database

 

 

 

 

Searching Records in a Database

 

 

 

 

Creating Data Entry Boxes

 

 

 

 

Employing Proper Syntax to Build Queries

 

 

 

 

Inserting New Records into a Database

 

 

 

 

Basic Data Integrity

 

 

 

 

Database Integrity

 

 

 

 

Deleting Existing Records From a Database

 

 

 

 

Client/Server

 

 

 

 

Performance and Advanced Capabilities Creating Data-enabled Dynamic Pages

 

 

 

EXPLORE WEB SERVER SECURITY ISSUES RELATED TO CGI FILES

1

1

0

 

Placing Scripts in Execute-Only Directories

 

 

 

 

Setting the Correct File Permissions

 

 

 

 

Disallowing Access to Command Line Functions

 

 

 

ADD SECURITY ELEMENTS TO SCRIPTS

6

6

0

 

Goals of Security

 

 

 

 

Encryption

 

 

 

 

X.500 vs. LDAP

 

 

 

 

Attributes

 

 

 

 

Symmetric, Asymmetric, and One-way Algorithms

 

 

 

 

Protocols

 

 

 

 

Types of Symmetric Cipher

 

 

 

 

Asymmetric Ciphers

 

 

 

 

One-way Hash Functions

 

 

 

 

Secure Transmissions

 

 

 

 

Suggested Resources

 

Books:

 

Zak, CGI/Perl, 0-619-03440-8, Course Technology, 2002.