Help Version: 2.12
Last Update: 03/05/01

Database Store System Overview

The best way to understand how the database system works is to think of the QuikStore script as a search engine. The program takes "Search Criteria" input from the user at the QuikStore Search page [search.html], opens up the [products.dat] database, finds matches related to the search criteria, and then uses one of the database template pages to display the data to the user. In this case the products are displayed "on-the-fly" and no actual "Product Pages" exist. These are built according to the criteria specified by the user.

To better understand this concept, let's look more closely at the shopping process for a Database style store. We have labeled the following graphics below as "Web Pages" for your normal site pages, and "Shopping Cart" as shopping cart functions. These are divided by the dotted line down the middle.

The shopping cart html pages referred to below are pre-designed template pages found in the "cgi-bin/templates" folder on your site. Unless you changed the default installation path, these files can also be located in the C:\Quikstore\server_files directory on your PC. These are the files you should be editing to be uploaded to the server.

During the outline below, we will list the name of each template page like this: [view_cart.html]. That designates that this is one of the pre-designed Quikstore templates. Entries like this {store_front_page} are configuration file entries.

NOTE: Most database style stores are built using the Catalog Wizard Program or the Data Import Wizard program located on your CD or from the download area at the QuikStore web site.


Step 1. Entry to the Store, Open The Search Page:

The user comes into your main home page and then selects an "Enter The Store" or "Display Products" link from your entry page to go into the QuikStore [search.html] page located in your document root directory on the server. You must provide a link to this page on your home page. 

At this point the user can select from a list of Categories or enter Keywords to preview products. Once they make a selection, They select the "View Products" button and this Search Criteria gets sent to the QuikStore search engine.

Now, the search engine opens the "products.dat" flat file database and locates matches based on the users search criteria.

The systems now needs to display this information to the user. It does this by using one of the database product page templates. These pages have special HTML "field" tags in them. These field tags get automatically substituted by the information from the database fields. This happens for each row returned from the users search.

The user now browses the products from the databases pages. At this point, if they find something they would like to order, they click the "Add to cart" button to add this item to their list. This is their virtual shopping cart that includes a list of items to purchase:

Once the user clicks on the Add To Cart button on your page, you can set the system to either refresh back to the database template page they came, or display the "cart" page [view_cart.html]. The system is set to refresh back to the page by default. See "Setting Configuration Parameters" for more detail on this.

NOTE: The user can also preview the cart page by clicking on a View Cart button. See the linking examples in "Editing the Templates" for more information about how to create these types of links. 

For this instruction, we will assume that the cart page has been displayed. The user can now make several choices for navigation:


Step 2. Go back and look at more products: (optional)

This provides a way for the user to navigate back to where they came from, your database product page.

This is done by selecting the "Product Page" button from the bottom of the cart page. The information for the specific category and number of products the user has already seen is supplied automatically by hidden form fields on the previous product page that they came from. This is so that they will be returned back to the exact location within the database that they came from.


Step 3. Go back to the Home Page: (optional)

This is done by selecting the "Back To Home Page" button from the bottom of the cart page. The information for the home page name {store_front_page} is set in the main configuration file.


Step 4. Delete Selected Items: (optional)

The delete items is a little different. This is strictly a shopping cart function. The program takes the input from the checkbox that the user has selected and opens up their shopping cart list. When it finds a match for the selected item, it removes it and then re-displays their shopping cart. If they delete all items from their cart, it will display an error indicating that they deleted all of their items in the cart [error_messages.html]. It also provides some instruction on what to do and allows them to choose between going back to the product page or the home page. The words used in the instructions for these errors can be set in the language configuration file. This is really just a means of navigation for the user.


Step 5. Change Selected Quantities: (optional)

The Change quantities works in a similar fashion. The user enters a new quantity and then clicks the "Change Quantities" button. The program takes the input from the the Quantity input box for the selected item and opens up their shopping cart list. When it finds a match for the selected item, it changes the quantity and total price for that item and then re-displays their shopping cart. Should the user accidentally type a non-numeric value, the program will display an error indicating that they have entered an incorrect quantity value and provide instructions on how to correct it. The words used in the instructions for these errors can be set in the language configuration file.


Step 6. Go to Checkout

The next available function is to go to the checkout stand. The function directs the user to select how they want their purchase shipped. We must gather this information before we go to the order form in case we want our shipping costs based on a user selected shipping type such as "Priority Mail". We also get the "State" value so we can calculate sales tax. This is where we gather all of the required information for final order calculations.


Step 7. Enter Personal Information:

Now that we have the required information to do the calculations, we display the totals to the user and request their personal information. This information may include such things as bill to name and address, ship to address, and payment information. By using the "paytype" option in the shipping.html page, you can have multiple order forms for credit cards, checks, purchase orders, etc. 


Step 8. Process The Order:

When the user clicks the "Process Order" button, the Shopping cart does several things:

  1. Logs the order (in the cgi-bin/orders directory)
  2. Sends Customer Email
  3. Sends Store Owner email
  4. Displays the Final Receipt Page [receipt_page.html].


Step 9. Return User to Home Page: (optional)

Now, you can end the process here or send the user back to your home page, it's up to you. A link {web_site_url} at the bottom of the [receipt_page.html] template allows the user to return back to your home page.

Note: If the user tries to refresh the final receipt page, the program will check to see if the order has already been processed. If so, a message will be displayed directing them back to the home page. The link in this message is set in the main configuration file under {web_site_url}. 

 


Summary:

A Database style store, such as one built using Catalog Wizard, you display items to the shopper by using the quikstore.cgi "search engine". This search engine reads the products.dat database file and then uses the selected database product page template to display the products to the user. These pages pass information TO the shopping cart program to allow the user to add items to their shopping cart. The shopping cart then provides a means of navigation for the user and allows them to finalize their order using one or all of the shopping cart system functions as shown above. In any event, when an Database style of store is created, the user continuously interacts with the quikstore.cgi program to retrieve and display your products. Any other events are run specifically by the shopping cart itself. To provide additional navigation, you can use normal HTML hyperlinks on the template pages.

 


Copyright 1997-2003 iSoft-Solutions, inc.