COMS303 E-Commerce Scripting Languages

Final Project Specifications

Project Overview:

A web based application consists of several parts.  The 'Front' which consists of those pages that are viewable to the users/clients of the website.  The database contains the information displayed on the pages or stored by the pages such as shopping cart data or customer data.   The administrative pages which are only visible to the owner's or employees of the website.  The administrative pages are used to update or access the database content and are referred to as CMSs or content management systems. 

In many web based applications some or even all of the content displayed on "Front" pages is pulled from a database.  This allows the pages of the website to be dynamically updated as requested by the user.  Fewer pages are required since they are used as templates and their content is pulled from the database based upon the client's input or request.  The page layout and look is the same but the content displayed on the page differs depending upon the user's selections or actions. 

Additional pages are required to gather and store customer information such as mailing address, billing information and shopping preferences.  This information is all stored in a database table by customer id.  Other pages are used to track the customer's shopping experience while on your webiste these pages or scripts allow the customer to select items to be placed in their shopping cart or removed as desired.  Additional scripts would be required to allow for checkout and money handling in a fully functional e-commerce website. 

The Content Management System (CMS) allows the owner's or employees of the website to access the database content in order to add, update or delete content as needed.  Examples include; adding new products and their descriptions, deleting old products, adding Sale information to a message area, printing customer reports, performing customer queries as needed, etc.  They use one or more specially designed web page(s) to perform these functions.  They are usually controlled by usernames and passwords to prevent others from gaining access to the database through the online environment. 

Your Assignment:

Create a small commercially oriented project that displays your knowledge of client side scripting, server side scripting and databases.  The web application must be commercially oriented.  You are encouraged to use an actual business, but not required to do so.  Choose a business that you are familiar with or like and base your website on that business.  You are welcome to use ASP, PHP or ASP.NET for the middleware aspects of this project.  You are welcome to use any relational database tool for your database. 

Your project will need to include elements that perform the following functionality. 

User Interface "Front"

  1. A home page that will greet your customers, promote the business and allow the customer to create an account or sign in if they are a returning customer.
  2. A Registration page that will gather basic customer information, including a username and password,  validate the data using client side scripting and store it in a database.
  3. Use server side scripting to maintain state information between pages such as Name or other information.
  4. Links to three or more product listings.  The actual contents of the product page will come from the database based upon the selected link.  You will only need one product page to display the contents. 
  5. The product page should allow the customer to add each product to their shopping cart and a link to display their shopping cart.
  6. A Shopping Cart page that will display the contents of the shopping cart to the customer.  It will allow them to add or delete products. This page should have a link to a 'Checkout Page'.
  7. A Checkout Page that will provide a total value of the items in the shopping cart, mark them as sold in the database, and provide a confirmation message to the user that their order has been processed.

Database

  1. Create a database with the name of your website company.
  2. Create a customer table that contains at least customer name, address, city, state, zip, username and password.
  3. Create a shopping cart table that contains at least customerID, product number, quantity, price, sold(y/n).
  4. Create a product table that contains at least product number, product description, product price.
  5. Create a control table that contains at least username, password, name.  This table is used to control access to the CMS.

Content Management System

  1. Create a page called admin.??? that will require a valid username and password from the control table before listing the functions available.
  2. Provide a method to display, add new products, delete old products from the products table.
  3. Provide a method to display, add customers, delete customers from the customer table.
  4. Provide a method to display customers and display the purchases of a selected customer.

Extra Credit:

Grading Criteria:

  1. Client Side Scripting Components    ( 20 points)
  2. Middleware processing Components    (50 points)
  3. Content Management System            (10 points)
  4. Website design, look and feel            (10 points)
  5. Website presentation                        (10 points)