Crs 590 
Building Web Sites using Apache, MySQL and PHP

I've put this course together in response to requests from clients for a course that, in five days, could train staff from a variety of programming, database and web design backgrounds to develop database driven internet and intranet sites. This course is the result.

It covers the essentials of all the technologies listed at a sufficient level to enable those who complete the course to make sense of existing web sites they may be working on, to develop their own web sites, and to serve as a starting point for more ambitious projects.

This course can be run using either Linux (Unix) or Windows as the underlying operating system. 

Course Outline Ctd.

String Manipulation and Regular Expressions

  • string formatting
  • joining and splitting strings
  • comparing strings
  • regular expressions - pattern matching and substitution

Introduction to Object-Oriented PHP

Serving Dynamic Content via Apache

  • Technical overview of Apache and how it is configured
  • Technical overview of  PHP and discussion of how PHP differs from CGI. 
  • Configuring httpd (the Apache server daemon) to process PHP scripts 
  • Serever Side Includes - enabling and configuring

Intensive overview of HTML and XHTML

  • Structure of an HTML document
  • Text and Images
  • Forms and form processing
  • Tables
  • Frames

Using PHP to process Forms and to generate Web pages

  • PHP scripts to process Forms and Validate User Input
  • PHP scripts to generate Forms dynamically
  • PHP scripts to generate graph images

Intensive overview of Relational Databases, SQL and  MySQL 

  • Tables, columns (attributes) and rows (records)
  • Entity, Attribute, Relationship model
  • Keys - Primary keys, Foreign keys and capture of relationships
  • Introduction to SQL syntax for retrieving, altering and deleting information from database tables
  • Queries spanning more than one table - joins
  • Queries containing subqueries
  • Transactions
  • Introduction to SQL syntax for creating databases and tables

Accessing the database from PHP

  • Connecting to the database
  • Querying the database
  • Retrieving and processing query results
  • Disconnecting from the database
  • Entering data into the database

Maintaining State and Transaction Processing

  • HTTP as a stateless protocol
  • Maintaining state via cookies, hidden fields, URL rewriting

Overview of how to implement an e-Commerce web site using PHP

Intended Audience

The course is intended for new programmers, database administrators, web designers, web administrators and project managers who need an integrated overview of constructing a database driven web site based on widely used open source technologies

Attendees are required to have some programming experience, to be familiar with the web and working in a Unix or Windows environment, to have a basic understanding of relational databases.

Key Skills

  • basic Apache configuration
  • competence in reading and modifying PHP scripts, ability to develop moderately complex PHP applications
  • knowing your way round mySQL 
  • Understanding Entity - Relationship modeling and Normalisation
  • ability to develop simple and moderately complex SQL queries
  • setting up and maintaining a database driven web site

Practical Work

The exercises follow the presentation closely. Their purpose is to foster confidence by doing, and by understanding and modifying templates.

Each workstation will be running Linux / Windows and have Apache, PHP and  MySQL  installed.

  • Understand and be able to modify an Apache configuration
  • Know how to install a website on an Apache server and  PHP
  • Write PHP programs for reading and writing data to both files and standard I/O
  • Understand HTML tables and implement a PHP program that constructs a display record table dynamically
  • Develop and refresh SQL skills by interacting with mySQL  via GUI and command line interfaces
  • Use PHP to query and modify an e-commerce oriented database
  • Implement forms for querying a mySQL database
  • Implement a PHP and database driven mini e-commerce site.

Course outline

Overview of the Internet and Web Technologies

  • Web Servers, Web Browsers and the HTTP protocol
  • Overview of Apache
  • Overview of the Common Gateway Interface (CGI)
  • Overview of server side scripting and how PHP works
  • Overview of the three tier model

The essentials of PHP

  • PHP - tags, statements, comments
  • Variables, Literals and Identifiers
  • Operators
  • Functions and subroutines
  • Input/Output (I/O) and File I/O in PHP
  • Arrays