the simplest fix would be to extend the session time out:
http://www.webmasterworld.com/forum88/12812.htm
as for the idea of storing the cart in a database, you would need for your users to login first for this idea to work.
The user would need to login so that you know the users ID, you need to know the users ID so that when the cart is stored, it is stored for that specific user, you can then create a recordset to return the items in the cart by the user ID and use the populate cart from recordset behavior.
extending the time out is much simpler way to fix this.