Customer Management

This tutorial is the first of four that outline the case study winestore application. It contains an overview of the complete application, as well as the customer management scripts for the winestore. We also introduce the include files that store common functionality used throughout the application.

The material presented here doesn't fully explain the scripts from the online winestore. The descriptions are outlines, and careful reading of the scripts is required to fully understand the functionality. Also, we avoid duplicating our discussions of the principles and basic techniques for building web database applications. tutorial 2 through tutorial 9 are required background reading to fully understand the implementations outlined here.

The online winestore illustrates the practice of developing web database applications and isn't a production e-commerce application. It is a complete application but doesn't have all the features of a full production system. Such a system would include features such as credit-card processing, a password change facility, prompts that confirm whether a user wishes to proceed with updates or orders, more comprehensive search features, and an administrative interface.

The scripts outlined in this tutorial perform the following functions:

Becoming a member
The complete customer <form> based on the simplified version presented in tutorial 6 and 8.
Updating customer details
This functionality is integrated into the script used for becoming a member, and is again an extension of the customer <form> from tutorial 6 and tutorial 8.
Checking customer details
The complete validation and database management processes for updating and creating new customers. These processes extend the customer <form> introduced in tutorial 6 by applying the validation techniques from tutorial 7. The process includes creating and storing passwords using the encryption techniques discussed in tutorial 9.
Providing a customer receipt
A receipt page that presents the results of the customer membership processing and avoids the reload problem discussed in tutorial 6.
Logging in
Authenticating a user and using sessions to track the user login status. This is an application of the techniques discussed in tutorial 8 and tutorial 9.
Miscellaneous database functions and common functions
An introduction to the file used throughout the winestore application, as well as the customer error handler implemented using the PHP error library.