Introduction
This is the Final Project for Foothill College Course COIN94, Constructing Data-Driven Web Sites with PHP & MySQL. The instructor was Bruce Linn. I took the course in Summer Quarter 2004.
Textbook and Sample Application
We used the following textbook:
Web Database Applications with PHP and MySQL, Second Edition
by Hugh E. Williams and David Lane
O'Reilly Media, Inc. 2004
The publisher provides a complete sample application, the Winestore database, which was the basis for the Final Project.
Web Database Applications with PHP and MySQL, Second Edition
by Hugh E. Williams and David Lane
O'Reilly Media, Inc. 2004
The publisher provides a complete sample application, the Winestore database, which was the basis for the Final Project.
Description of Final Project
Briefly summarized, the Final Project consists of the following:
To see the detailed requirements of the Final Project, as received from the instructor, see the Final Requirements page.
- login and authentication (create a login form, maintain usernames and passwords in MySQL database, use PHP sessions, create login procedure which tracks login attempts)
- client side validation (Javascript) of user form
- detection and prevention of session hijackings
- creation and maintenance of a customer record with the following fields: First Name, Surname, Address, City, Email/Username, and Date of Birth.
To see the detailed requirements of the Final Project, as received from the instructor, see the Final Requirements page.
Tests
Some suggested tests follow:
For testing, you can use the following user names and passwords, which already exist in the MySQL database:
Note that the Final Project focuses on logon, validation, and security tasks. When implemented properly, these details are invisible to most users--not everyone will appreciate them, or know that they even exist. They are, nevertheless, crucial and fundamental to any web application.
The Final Project is not perfect; further improvements could be made. It was good enough to meet the instructor's requirements. I received an "A" in the class.
- create a new user with a username, password, and customer record
- create a new user with a username already in use
- logon as an existing user with incorrect password, three consecutive times
- save a customer record with a required field blank
- save a customer record with date field incorrect
For testing, you can use the following user names and passwords, which already exist in the MySQL database:
- Marilyn@aol.com (field email), Marilyn (field password)
- GerardTL@aol.com, Gerard
- Rocky@aol.com, Rocky
- Bullwinkle@aol.com, Bullwinkle
- Spiderman@aol.com, Spider
Note that the Final Project focuses on logon, validation, and security tasks. When implemented properly, these details are invisible to most users--not everyone will appreciate them, or know that they even exist. They are, nevertheless, crucial and fundamental to any web application.
The Final Project is not perfect; further improvements could be made. It was good enough to meet the instructor's requirements. I received an "A" in the class.
Running the Final Project
The Final Project is available on the Internet. To run the Final Project, click on the following:
http://gerardlum.com/coin94final/final.php.
http://gerardlum.com/coin94final/final.php.
PHP Source Code
To get a copy of the PHP source code in a zip file, send me an email:
.
Contact Information
Gerard T. Lum
650 903-0447
http://GerardLum.com (includes links to websites that I have designed, my resume, and other information)
Email: .
650 903-0447
http://GerardLum.com (includes links to websites that I have designed, my resume, and other information)
Email: .