close ad
 
Important WebAssist Announcement
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues

rating

Correct way to clear cart without logging the user out?

Thread began 9/10/2010 9:51 am by SaladoGuy | Last modified 9/10/2010 11:57 am by Jason Byrnes | 1122 views | 1 replies |

SaladoGuyBeta Tester

Correct way to clear cart without logging the user out?

Hello,

I have a small web site that should work like this:

* User adds product to cart, and gets sent to the cart page
* On the "viewcart" page, when they click "check out", they are required to log in (or register) if they are not already logged in
* Once logged in, the billing/shipping address form fields are automatically populated from the info saved when they registered.
* Once they check out, they are sent to the confirmation page.

I've used the SuperSuite to build this site (eCart5, DataAssist, SecurityAssist, etc)

The problem I'm having is that once the customer reaches the confirmation_success page, the cart is not being emptied. So if they go back to "view cart", the items they just bought are still in the cart, or if they add a new item to the cart, they will see both the old and the new.

Further more, if they manually clear out the old cart contents, and add a new item and purchase it, instead of adding a new order to the database (with a new order ID) the record for the previous order is modified instead! And in the orderdetail table, the old detail record is removed and a new record is inserted, still referencing the old order ID#

I used the CookieToolkit to add a "Clear Session Values" server behavior to the confirmation_success page, which does get around all the above listed problems, but causes a new one: the user is now "logged out" of the site and has to log back in again.

I may be getting confused by the terminology (especially the term "session") but what I need to do is empty the cart and change ... should I call it the sessionID? ... but NOT log the user out.

So that they can continue using the site and place new orders correctly without having to "log in" again.

What is the correct way to handle this?

(If my explanation is not clear, please ask and I'll try again)

Thank you.

Sign in to reply to this post

Jason ByrnesWebAssist

the cookies toolkit Clear Session Variable code will look like this:

php:
<?php 

if ("" == ""){
  
// WA_ClearSession
    
$clearAll TRUE;
    
$clearThese explode(",","");
    if(
$clearAll){
        foreach (
$_SESSION as $key => $value){
            unset(
$_SESSION[$key]);
        }
    }
    else{
        foreach(
$clearThese as $value){
            unset(
$_SESSION[$value]);
        }
    }
}
?>




you will need to add code before that to store the users ID sesssion in an application variable.

then add code after it to reset the session variable from the application variable.

for the sake of example, lets say the users ID is stored i a session named "userID" when they log in.
the code will look like this:

php:
<?php if(!session_id()) session start(); ?>

<?php $userID 
$_SESSION['userID']; ?>
<?php 
if ("" == ""){
  
// WA_ClearSession
    
$clearAll TRUE;
    
$clearThese explode(",","");
    if(
$clearAll){
        foreach (
$_SESSION as $key => $value){
            unset(
$_SESSION[$key]);
        }
    }
    else{
        foreach(
$clearThese as $value){
            unset(
$_SESSION[$value]);
        }
    }
}
?>
<?php session_regenerate_id
(); ?>
<?php $_SESSION
['userID'] = $userID;




You will have to check your login page to find the correct session name for your case,

Sign in to reply to this post

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question

Content

rating

Layout

rating

Ease of use

rating

security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...