Heysam wrote:
> Når de så klikker på indkøbsurven
> skulle de gerne se deres varer. Men jeg ved ikke hvordan
> man gør. Jeg har læst jeres artikler, som jeg har lært meget af
> (næsten alt hvad jeg kan, har jeg fra jer),
> men jeg kan ikke lave en indkøbskurv.
Hej du
Session variabler er nemme at arbejde med i ASP. Se evt. her for en god
begyndertutorial:
http://www.w3schools.com/asp/asp_sessions.asp
Hvis du vil lave en indkøbskurv, kan jeg forestille mig, at du i
forvejen bruger en database med varer. Så er det nok nemmest blot at
gemme en liste med varenumre i din session variabel. Når brugeren
tilføjer en vare til indkøbskurven udvider du blot listen, f.eks. således:
----------
Session("basket") = Session("basket") & vareNr & ","
----------
.... hvor Session("basket") er din indkøbskurv og vareNr er
identifikationsnummer på den vare, der tilføjes.
I denne udgave vil varenumre ligge i sessionsvariablen som en lang liste
af kommaseparerede tal, f.eks:
-----------
182,1034,19,992,
-----------
Vil du fremvise indholdet af indkøbskurven, kan du bruge listen som
argument i din databaseforspørgsel. Her er en eksempel:
---------
dim myBasket
myBasket = Session("basket")
' Check om der ligger nogen varer i kurven
if len(myBasket) > 0 then
' Fjern den sidste komma for at danne korrekt sql liste
myBasket = left(myBasket,len(myBasket)-1)
strSQL = "select * from varer where vareid in (" & myBasket & ")"
' Udfør forespørgsel og fremvis indholdet
set rs = conn.execute(sql)
'...... vis indhold kode her ......
' Luk recordsettet
rs.close
set rs = nothing
else
' Der ligger ingen varer i kurven
response.write("Du har ingen varer i din indkøbskurv.")
end if
----------
Vil du slette en vare fra indkøbskurven, kan du evt. bruge replace(..)
funktionen, hvor varenummer samt det efterfølgende komma fjernes:
----------
Session("basket") = replace(Session("basket"),vareID & ",","")
----------
Bemærk, at det er blot et meget simpelt forslag til en løsning. Du kan
gemme din indkøbskurv på flere måder. Det er dog altid en god idé at
begrænse indholdet af dine sessions og kan du helt slippe uden om
sessions, er det endnu bedre.
Håber, det hjælper dig lidt på vej.
t