Solved

How do I update a shopping cart session using a checkbox?

Posted on 2004-09-13
9
324 Views
Last Modified: 2012-05-05
Dear Experts,

I am selling products that are all unique so I don't need to update cart quantities, but I do need to remove products using a check box the problem is the code I have so far removes all the products regardles of which check box I have selected. Code so far:

IF Request( "updateQ" ) <> "" THEN
FOR i = 0 TO UBOUND( localCart, 2 )
deleteProduct = TRIM(Request("pd" & localCart( CARTPID, i ) ) )
IF deleteProduct <> " " THEN
localCart( CARTPID, i ) = ""
ELSE
END IF
NEXT
END IF

<form name="form1" method="post" action="shop_cart.asp">
<input name="updateQ" type="hidden" value="1">

<td><%=Server.HTMLEncode( localCart( CARTPID, i ) )%></td>
<td><%=Server.HTMLEncode( localCart( CARTPNAME, i ) )%></td>
<td><%=formatCurrency( localCart( CARTPPRICE, i ) )%></td>
<td>input name ="pd<%=Server.HTMLEncode(localCart( CARTPID, i) )%>" type="checkbox" value="1">

<input type="submit" name="Submit" value="Update cart">

Many thanks
Tamz
0
Comment
Question by:morphy0186
  • 5
  • 2
  • 2
9 Comments
 
LVL 46

Expert Comment

by:fritz_the_blank
ID: 12048355
Okay, are you trying to remove a sesssion conent or an element from your array?

FtB
0
 
LVL 46

Expert Comment

by:fritz_the_blank
ID: 12048375
Also, keep in mind that your check box is simply returning a value of 1 if it is checked and nothing at all if it is not checked.

FtB
0
 

Author Comment

by:morphy0186
ID: 12048444
I think an element from the array. The code to get the session shopping cart is:

IF NOT isArray( Session( "cart" ) ) THEN
DIM localCart( 4, 20 )
ELSE
localCart = Session( "cart" )
END IF

Is that what you wanted?
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 46

Expert Comment

by:fritz_the_blank
ID: 12048475
Okay, so what you want to do then is to wipe out an element in the cart based on a checkbox, is that it? And it looks like you are storing the array in a session variable? (Bad Idea!)

FtB
0
 
LVL 46

Accepted Solution

by:
fritz_the_blank earned 500 total points
ID: 12049314
In any event, I think that you problem is as follows:

IF Request( "updateQ" ) <> "" THEN
      FOR i = 0 TO UBOUND( localCart, 2 )
            deleteProduct = TRIM(Request("pd" & localCart( CARTPID, i ) ) )
            IF deleteProduct <> " " THEN
                  localCart( CARTPID, i ) = ""
            END IF
      NEXT
END IF

This code will delete all values if the request object does not equal space 1, i.e., " "

Perhaps you meant to say:

IF trim(deleteProduct) <> "" then


FtB
0
 
LVL 31

Expert Comment

by:alorentz
ID: 12049496
Why aren't you using a database to store your cart?
0
 

Author Comment

by:morphy0186
ID: 12052296
Thank you very much for you help FtB.

alorentz, I am not using a database because I don't want users to have to login.
0
 
LVL 31

Expert Comment

by:alorentz
ID: 12052683
>>, I am not using a database because I don't want users to have to login.

What makes you think that?  You absolutely DO NOT need users to login to use a database....
0
 
LVL 46

Expert Comment

by:fritz_the_blank
ID: 12060287
Glad to have helped,

FtB
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
CSS Question.. 3 87
add custom headers to my mail 2 55
JQuery to parse xml string and get element by id 4 35
ASP/VB email question 4 35
I have helped a lot of people on EE with their coding sources and have enjoyed near about every minute of it. Sometimes it can get a little tedious but it is always a challenge and the one thing that I always say is:  The Exchange of information …
Hello, all! I just recently started using Microsoft's IIS 7.5 within Windows 7, as I just downloaded and installed the 90 day trial of Windows 7. (Got to love Microsoft for allowing 90 days) The main reason for downloading and testing Windows 7 is t…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
In a recent question (https://www.experts-exchange.com/questions/28997919/Pagination-in-Adobe-Acrobat.html) here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question