Avatar billede loukas Mester
05. marts 2004 - 23:33 Der er 1 løsning

indkøbskurv til webshop

Jeg har på et tidligere tidspunkt lavet nedenstående kode til en indkøbskurv til en webshop.
Kurven indeholder vareVarianterne størrelse og farve(size, color)
Nu vil jeg gerne udvide den lidt så den kan indeholde et ubestemt antal varianter, som bliver hentet fra en database.
F.eks. farve, livvidde, benlængde.

Koden:

If IsArray(Session("vare")) = false Then



  Dim vare2(19,4)   
  vare2(1,0) = Request.QueryString("item")  'Vare nr eller anden ID
  vare2(1,1) = Request.Querystring("size")  'Størrelse
  vare2(1,2) = Request.QueryString("color") 'Farven
  vare2(1,3) = Request.QueryString("count") 'Antalet af varen man vil købe
  vare2(1,4) = Request.QueryString("pris")  'Varens pris
  Session("vare") = vare2
else
  vare2=session("vare")
  incart=false
  for i=lbound(vare2) to ubound(vare2)
    if vare2(i,0) = Request.QueryString("item") AND vare2(i,1) = Request.Querystring("size") AND vare2(i,2) = Request.Querystring("color") and not(incart) then
      'Opdater Countet
      vare2(i,3) = vare2(i,3) + CInt(Request.QueryString("count")) 'Antalet af varen man vil købe
      incart=true
    end if
    if vare2(i,0)="" and vare2(i,1)="" and not(incart) then
      'Ligger nu vare i kurven
      vare2(i,0) = Request.QueryString("item")  'Vare nr eller anden ID
      vare2(i,1) = Request.Querystring("size")  'Størrelse
      vare2(i,2) = Request.QueryString("color") 'Farven
      vare2(i,3) = Request.QueryString("count") 'Antalet af varen man vil købe
      vare2(i,4) = Request.QueryString("pris")  'Varens pris
      incart=true
    end if
  next
  session("vare")=vare2
end if

strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=" & Server.Mappath("db/webshop.mdb") & ";"

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open strConnection




pris = 0
vareid = 0
antalid = 0
farveid = 0
ialt = 0
for i=lbound(vare2) to ubound(vare2)
varenr = vare2(i,0)

    if len(varenr) > 0 then
        Set objRS = Server.CreateObject("ADODB.Recordset")
        Set objRS.ActiveConnection = objconn
        SQL = "SELECT * FROM varer WHERE vareid=" & varenr &";"
        objRS.Open  SQL
   
    farve = vare2(i,2)
    antal = vare2(i,3)
    pris = vare2(i,4)
   
    total = antal * pris
    ialt = ialt + antal * pris
   
  Response.write "<tr>"
  Response.write "<td nowrap><font face=verdana size=1>" & objRS("varenavn") & "</font></td>"
  Response.write "<td><font face=verdana size=1>" & vare2(i,1) & "</font></td>"
  Response.write "<td><font face=verdana size=1>" & farve & "</font></td>"
  Response.write "<td><font face=verdana size=1>" & antal & "</font></td>"
  Response.write "<td><font face=verdana size=1>" & total & "</font></td>"
  Response.write "</tr>"

set objRS = nothing   
end if
next
Response.Write "<tr><td><font face=verdana size=1><b>Total:</b></font></td><td>&nbsp;</td>&nbsp;<td>&nbsp;</td><td>&nbsp;</td><td><font face=verdana size=1><b>"& ialt &"</b></font></td></tr>"
Response.write "</table>"



set objRS = nothing

Response.Write "<a href=""confirm.asp"">Bestil</a>&nbsp;"
Response.Write "<a href=""default.asp?kategori=" & strKategori & "&kurv=2"">Slet</a></center><br><br>"





'Her hentes varianter fra databasen
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open strconnect

SQL = "SELECT * FROM VareVarianter"

set rs = objConn.Execute(SQL)

        If rs.EOF then
           
        Else

                Do
                response.Write rs("variantnavn") & "<br>"
                rs.MoveNext

                Loop While Not rs.EOF

        End if

set rs = Nothing
objConn.Close
Avatar billede loukas Mester
08. marts 2004 - 00:52 #1
jeg lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester