CSc 8711. Databases and the Web
Summer 2000, Programming Project 3 (Web Shopping Application)
Due: Tuesday, July 11th
In this project, we will implement a shopping cart based Web shopping
application for an online video store using Java Servlets.
The online video store maintains
an inventory of DVDs. Customers become member of this online store and are able
to search for DVDs of their interest and collect DVDs in their shopping
cart. At any time, they are able to edit the shopping cart and
also are able to check out. The
initial login screen allows an existing customer
to sign in or a new customer to register. Upon successful sign-in, a
3-frame page is displayed.
As one can see, there are six different different options for the
customer:
- Search by Keyword: This option allows the customer to perform a
keyword search of the DVD titles (substring; case insensitive comparison).
Successful matches are shown on the
right frame
The customer may then choose certain quantities of the DVDs and add them to
the shopping cart. Upon successful addition to the shopping cart, a
message should be shown on the right frame.
- View/Edit Cart: Upon clicking this option, the system should display
the shopping cart on the
right side frame.
Here, the customer may edit the shoping cart by changing
quantities including replacing a value with a zero. Upon submission,
the cart should be updated and a message
should be displayed.
- Update Profile:
This option brings up the customers
profile on the right
frame. The user may modify any field and submit.
Upon successful update, a
message should be displayed.
- Check Order Status: This option allows the customer to
see all their orders. Upon clicking
the order number link the details
for that order should be displayed.
- Check Out: Upon clicking this link, the system should
empty the cart and move the items into the orders and
odetails tables. An invoice
should be printed on the right frame.
- Logout: Upon logout,
the system should display 3 Options
to the user. The user may check out, save cart and logout or
empty cart and logout. Upon checkout a similar action
should take place as earlier. Upon the other two options,
appropriate action should take place and a message should be displayed.
If the cart was empty to begin with these 3 options should not be shown and
the customer should be logged out.
The database tables for this problem is available in the file
database.sql.
Some other implementation points:
- The system should implement session control using
the u_access column of the customer table.
A unique character string should be generated
upon login and stored in this column. On each user click,
the system should verify that the u_access
value in the database is the same as the value passed around from one page to
another as hidden field or as part of the URL.
Upon logout, this value should be set to null.
- The system should also automatically logout the
session after user inactivity of 1 minute.
To implement this feature, you would use the l_access
column of the customer table.