How to Troubleshoot "Your Basket Is Empty" Error Messages (256867)



The information in this article applies to:

  • Microsoft Site Server 3.0 Commerce Edition

This article was previously published under Q256867

SYMPTOMS

When shoppers attempt to complete purchases from an online Commerce Server store, they may receive the following error message:
Your Basket Is Empty
This error message can occur even if the shopper previously had one or more items in their basket to be purchased. If the shopper's basket is empty, this message is expected.

CAUSE

When a shopper attempts to complete a purchase, Commerce Server first verifies the ShopperID for the shopper, and then retrieves the items in the shopper's basket for processing. This error message may be caused by one of the following:
  • If there is a problem verifying the ShopperID, then Commerce Server automatically creates a new ShopperID for the shopper with a new, empty basket.
  • If the Commerce Store is using frames, then it is possible that a shopper may have multiple ShopperIDs, each having a corresponding basket associated with it.
  • Under certain circumstances, a given ShopperID may have multiple baskets associated with it. When this occurs, Commerce Server may retrieve an empty basket instead of the basket that the shopper was using.
  • Under certain circumstances, the query that retrieves the items in the basket for a given shopper may fail. When this happens, the "Your Basket is Empty" error message occurs.

RESOLUTION

To resolve the error message, do one of the following, depending on the cause:
  • Commerce Server attempts to retrieve the ShopperID of a shopper by using the page.getshopperid function. This function may return null if the shopper is using a Netscape browser over a Secure Sockets Layer (SSL) connection. To resolve this issue, remove the :443 and :80 suffixes for the secure and non-secure host names in the Commerce Host Administrator.
  • All Commerce Server pages include the Shop.asp file by default. The Shop.asp file contains the code that generates a new ShopperID if one does not already exist for a given shopper. If a Commerce Server store is built using frames, then every frame includes the Shop.asp file by default, and multiple ShopperIDs and baskets are generated for a shopper visiting the store. Microsoft does not recommend the use of frames for any page that includes the Shop.asp file for this reason.
  • To prevent a given ShopperID from having multiple baskets associated with it, make sure that the <storename>_basket table has a primary key of shopper_id set.
  • The ADO query that retrieves the items in the basket for a given shopper may return an empty recordset. This issue can be addressed by installing the latest version of Microsoft Data Access Components (MDAC) and applying the Maxblock Registry fix detailed in the following Microsoft Knowledge Base article:

    193026 FIX: NOT_ENOUGH_STORAGE Errors in IIS Log File

    For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

    230101 FIX: Data Queries Sporadically Return Empty Recordsets


Modification Type:MajorLast Reviewed:6/30/2006
Keywords:kbhowto KB256867