Avatar billede babyworm Nybegynder
28. marts 2006 - 18:34 Der er 5 kommentarer og
1 løsning

Større array

Hej med jer,

Jeg har lavet en indkøbskurv med flere "typer" at ligge i kurven.

Jeg har gjort det ved at lave 3 arrays der kører parallelt..

Hvis jeg nu skal sortere og samle de arrays der er ens, hvordan gør jeg så det ?

Min kode:

<%
ID = Request("ID")
mode = Request.Querystring("mode")

If mode = "addProd" Then

    strProd    = Request("prod")
    strSize = Request("size")
    strColour = Request("colour")
    strBasketProd = Session("basketProd")
    strBasketSize = Session("basketSize")
    strBasketColour = Session("basketColour")

    If IsNumeric(strProd) AND Int(strProd) > 0 Then

        If Not IsNumeric(strSize) AND strSize = "" Then
            strSize = "0"
        End if

        If Not IsNumeric(strColour) AND strColour = "" Then
            strColour = "0"
        End if

        If strBasketProd = "" Then

            strBasketProd     = strProd
            strBasketSize     = strSize
            strBasketColour = strColour

        Else

            strBasketProd     = strBasketProd & "," & strProd
            strBasketSize     = strBasketSize & "," & strSize
            strBasketColour = strBasketColour & "," & strColour

        End if

        Session("basketProd") = strBasketProd
        Session("basketSize") = strBasketSize
        Session("basketColour") = strBasketColour

    End if

    Response.Redirect "default.asp"

ElseIf mode = "clearBasket" Then

    Session("basketProd") = ""
    Session("basketSize") = ""
    Session("basketColour") = ""

End if


%>

Prod: <%=Session("basketProd")%><br/>
Size: <%=Session("basketSize")%><br/>
Colour: <%=Session("basketColour")%><br/>

<br/><br/>

<form method="post" action="default.asp?mode=addProd">
Produkt:<br/>
<select name="prod">
<option value="1">Sko</option>
<option value="2">Støvler</option>
<option value="3">Gummisko</option>
<option value="4">Sandaler</option>
<option value="5">Vaders</option>
</select><br/><br/>

Størrelse:<br/>
<select name="size">
<option value="1">30</option>
<option value="2">32</option>
<option value="3">34</option>
<option value="4">36</option>
<option value="5">38</option>
</select><br/><br/>

Farve:<br/>
<select name="colour">
<option value="1">Blå</option>
<option value="2">Rød</option>
<option value="3">Grøn</option>
<option value="4">Gul</option>
<option value="5">Orange</option>
</select><br/><br/>

<input type="submit" value="Læg i kurven"> <input type="button" value="Ryd kurv" onclick="document.location.href='default.asp?mode=clearBasket';">
</form>





<%
strBasketProd = Session("basketProd")
strBasketSize = Session("basketSize")
strBasketColour = Session("basketColour")

arrBasketProd = Split(strBasketProd,",")
arrBasketSize = Split(strBasketSize,",")
arrBasketColour = Split(strBasketColour,",")


For i = LBound(arrBasketProd) TO UBound(arrBasketProd)

    Response.Write "Produkt: " & arrBasketProd(i) & " - " & "Størrelse: " & arrBasketSize(i) & " - " & "Farve: " & arrBasketColour(i) & "<br/>"

Next
Response.Write "<hr>"
%>
Avatar billede mitbrugernavn Praktikant
29. marts 2006 - 09:10 #1
prøv dette - det hele ligger i samme fil - produkt.asp

<form method="post" action="produkt.asp">
Produkt:<br/>
<select name="prod">
<option value="1">Sko</option>
<option value="2">Støvler</option>
<option value="3">Gummisko</option>
<option value="4">Sandaler</option>
<option value="5">Vaders</option>
</select><br/><br/>

Størrelse:<br/>
<select name="size">
<option value="1">30</option>
<option value="2">32</option>
<option value="3">34</option>
<option value="4">36</option>
<option value="5">38</option>
</select><br/><br/>

Farve:<br/>
<select name="colour">
<option value="1">Blå</option>
<option value="2">Rød</option>
<option value="3">Grøn</option>
<option value="4">Gul</option>
<option value="5">Orange</option>
</select><br/><br/>

<input type="submit" value="Læg i kurven" name="buy"> <input type="submit" value="Ryd kurv" name="not_buy" >
</form>

<%

Response.Write "<hr>"
%>
<%
ID = Request("ID")
mode = Request.Querystring("mode")


If request("buy") <> "" Then
    strProd    = Request("prod")
    strSize = Request("size")
    strColour = Request("colour")
 

    If IsNumeric(strProd) AND Int(strProd) > 0 Then

i = session("i") + 1

session("i") = i

        If Not IsNumeric(strSize) AND strSize = "" Then
            strSize = "0"
        End if

        If Not IsNumeric(strColour) AND strColour = "" Then
            strColour = "0"
        End if

  Session("basketProd" &i) = strProd
  Session("basketSize" &i) = strSize
Session("basketColour" &i) = strColour

    End if

  '  Response.Redirect "default.asp"

End if

%>
<%
'her rydder du din kurv
if request("not_buy") <> "" then
for b = 0 to session("i")
Session("basketProd" & b) = ""
Session("basketSize" & b) = ""
Session("basketColour" & b) = ""
session("i") = 0
next
end if
%>
<%
'her sletter du en valgt bestilling
if request("slet") <> "" then
slet = request("slet")
Session("basketProd" & slet) = ""
Session("basketSize" & slet) = ""
Session("basketColour" & slet) = ""
end if

'her tæller du din kurv op
'nu får prod, size og colour et unikt nr ved bestillingen
for b = 1 to session("i")

if Session("basketProd" & b) <> "" then
response.write "Prod: " & Session("basketProd" & b) & "<br/>"
end if
if Session("basketSize" & b) <> "" then
response.write "Size: " & Session("basketSize" & b) & "<br/>"
end if
if Session("basketColour" & b) <> "" then
response.write "Colour: " & Session("basketColour" & b) & "<a href=""produkt.asp?slet="&b&"""> - slet bestilling </a><br/><br/>"
end if
next
%>
<br/><br/>
Avatar billede The Real Yoda Juniormester
29. marts 2006 - 10:08 #2
hvad med bare at lave din kurv i databasen .. med session id som identifier..

så er det meget nemmere for dig at sortere og rette i kurven..

//therealyoda
Avatar billede babyworm Nybegynder
29. marts 2006 - 10:09 #3
Der bliver jeg vist lige nødt til at få et eksempel.. kan du ikke lave det yoda ?
Avatar billede The Real Yoda Juniormester
29. marts 2006 - 10:12 #4
Hvis nu du laver en tabel der hedder kurv.

denne tabel indeholder sessionid,varenummer, varetekst, størrelse og farve og antal.

og så i stedet for at tilføje til session, så inserter du bare records i databasen.

og ved vis kurv.. der kan du jo så bare hente det hele igen.
og så hvis der så ændres på antal er det jo bare en update
Avatar billede babyworm Nybegynder
29. marts 2006 - 10:33 #5
Det lyder avanceret.. kan du ikke lave et eksempel ?
Avatar billede mitbrugernavn Praktikant
31. marts 2006 - 17:18 #6
Er du kommet længere babyworm ??
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