Standard |
CIS 2271 – Fundamentals of CGI Programming using PERL
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 |
|
|
|
|
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 |
|
|
|
|
|
|
|
|
||
Suggested Resources |
Books:
Zak, CGI/Perl, 0-619-03440-8,
Course Technology, 2002.