Συγγνώμη που θα σου απαντήσω λίγο στα γρήγορα αλλά δεν έχω πολύ χρόνο. Στη σελίδα σου κάθε φορά που μπαίνεις καλείς την "makeCart", εκεί έχεις το "Session("cart") = objD" (αν κατάλαβα καλά το Session("Cart") κρατάει τα προιόντα) "ξανααλλάζει" τιμή άσχετα αν είχες κάτι από πριν ή όχι στο καλάθι σου. Εκεί νομίζω με μια γρήγορη ματιά εντοπίζεται το πρόβλημα.
Θα σε συμβούλευα να βάζεις στο Session ένα 'collection-oriented' object (συγχωρέστε με για τον αδόκιμο όρο :-) ) και απλά όταν το session είναι null, να το δημιουργείς, και όταν δεν είναι, τότε να κάνεις add items σε αυτό. |
|
Νομίζω ότι αυτό σου "λείπει", εξέτασε αν υπάρχει κάτι και αν ναι πρόσθεσε τις καινούριες τιμές.
Εναλλακτικά (για μια απλή μορφή) μπορείς να κρατάς στο Session("cart") τα ids των προιόντων που βάζεις στο καλάθι με μορφή string με διαχωριστικό. Κάθε φορά προσθέτεις ένα. Στο τέλος με τη split βρίσκεις τα επιμέρους.
If IsNothing(Session("Cart")) Then
Session("Cart") = productId.ToString
Else
Session("Cart") = Session("Cart").ToString & "," & productId.ToString
End If
Dim x As String()
x = Session("Cart").ToString.Split(",")
Το "x" σου περιέχει τα ids των προιόντων που βρίσκονται στο καλάθι.