About ReVeRb CeNtRaL
  • XML Music is a demonstration site build by Ryan McHenry for MIS 324 Intermediate Web Development and Management at Western Washington University.
  • Built using ASP.NET.
  • All data is stored in an Access database (normalized to third-normal form).
  • All reusable components are contained within user controls (such as the header, footer and search/browse menu).
  • Am XML-based "Supplier Network" is used to share product descriptions among students in the course.
     
  • Home Page
    • "Today's Feature Items" are randomly selected from the database.
    • A single SQL statement is used to retrieve all six CDs (for maximum efficiency).
    • The DataList is used to displays the items.
    • The browse menu is dynamically generated from the database using a SQL query that shows only the current book categories.
    • The browse menu is cached for 10 minutes (to maximize efficiency).
  • Search/Browse response page
    • Searches the title, artist, description and category fields in the database.
    • SQL's distinctRow statement is used to eliminate duplicate items.
    • The Row.Count property of the DataSet object is used to count the number of CDs found by the search.
    • Responds gracefully if no items are found by search.
  • Shopping cart page
    • A cookie is used to store the ASINs of CDs in the cart.
    • Handles multiple quantities of each CD.
    • Information for all CDs in the shopping cart is retrieved using a single SQL statement.
    • Shipping and product costs are calculated.
    • A DataSet is used to hold product data and match quantities from cart.
    • A DataList is used to display the data.
  • Checkout page
    • Searches the database for existing customer accounts and automatically loads their shipping information into the order form.
    • Information for new customers is written to the database.
    • A unique ID number is assigned to orders and new customers.
    • Validation controls are used to validate all user inputs, including a regular expression validator to check the pattern of the email address.
    • The OnTextChanged event of the textbox is used check for changes to customer information. Database is updated only if data has changed (to maximize efficiency).
    • An HTML email is sent to the customer with the order information.
    • The shopping cart is emptied by deleting the shopping cart cookie.
  • Order History Page
    • Searches the database and displays all orders associated with customer's ID.
  • Enhancements
    • Graphics.
    • Shopping cart status box.
    • Recently viewed items listed in right-hand column (up to 5 items).
    • Browse menu contains number of items in each category (SQL groups). Browse menu is cached.
    • Search string is filtered to be "bomb proof" against apostrophes, html and SQL injection.
    • If only one item matches a search users are automatically redirected to the product page.  
    • Separate billing and shipping addresses. User can add shipping addresses or select past addresses they have shipped to from a drop down list.
    • Login uses passwords and verifies if the password matches. Upon verification, a cookies is written with the user's email, customer id and full name. The name is used in the welcome note.
    • The search results and order history pages use paging.
    • The order history displays general order information. A link is provided to view the details of the order.
    • Track names on the product page with a music note image beside them to denote an active music link. If there is no link, then no music note will be appended to the track name.
    • Users can change their password when they order or update their information.
    • A link is provided on the sign in page for users who forgot their password. They can enter their email address in the form and their password will be sent to the email address stored in the database, if it is found in the database.
  • Thanks to Amazon.com (the world's greatest on-line store) for the use of its CD images and descriptions.

Be sure to visit XML Music 2, our web services music store that lists the entire Amazon.com music catalog.

Items In Cart 0
Total $0.00
GoTo Cart