webForumDet fria alternativet

ta bort fran kundvagn

ASP

11 svar · 415 visningar · startad av Gimbo

Medlem sedan dec. 20001 626 inlägg
Frågan#1

hejsan,

hur gor man for att enklast ta bort ngt fran en kundvagn, om jag har 3olika produkter i den sa listar jag de i 3 olika rader, jag vill att de man klickar pa delete vid ena produkten sa skall enbart den forsvinna och de 2 andra finnas kvar? hur gor man detta enklast och effektivast?

Medlem sedan juni 200032 967 inlägg
#2

Beror ju på hur sakerna är lagrade i din kundvagn???

Medlem sedan dec. 20001 626 inlägg
#3

ok sa har gor jag for att lagga till ngt i kundvagnen:

    Sub CreateNewOrder()
        Application.lock
        if Application("orderID") = "" then
			Application("orderID") = 1
        end if
       
        
       intOrderID = Application("orderID")
       Session("orderID") = intOrderID
       Conn.Execute("INSERT INTO orders " _
		& " (orderID, status) values " _
		& " ("&intOrderID&", 'OPEN')")
		
		Application("orderID") = Application("orderID") + 1
       Application.Unlock
    End Sub

    Sub AddToOrder(nOrderID, nProductID, nQuant)
        sqlText = "INSERT INTO itemsOrdered " _
            & " (orderID, productID, quantity) values " _ 
            & " ("&nOrderID&", "&nProductID&", "&nQuant&")"
        Conn.Execute(sqlText)

    End Sub
Medlem sedan juni 200032 967 inlägg
#4

Tja, en liten enkel DELETE-query med orderID och productID som villkor borde göra susen.

Medlem sedan dec. 20001 626 inlägg
#5

skumt, nar jag kor i MSSQL7.0 sa raderar den raden men i sjalva koden sa gor den inte det dvs queryn funkar:

<% if request.querystring("action") = "delete" then

sql = "DELETE FROM itemsOrdered WHERE "_
            & "orderID = " & Request.Querystring("OrderID") & " AND productID = " & Request.Querystring("productID") & " "
 response.write sql           
'response.redirect "reviewOrder.asp"
end if
%>

och delete lanken ser ut pa foljande satt:

<a href="reviewOrder.asp?action=delete&productID=<%=intProdID%>&orderID=<%=intOrderID%>">

nar jag skriver ut sql ser det ut sa har:

DELETE FROM itemsOrdered WHERE orderID = 1 AND productID = 14
Medlem sedan juni 200032 967 inlägg
#6

Exekverar du SQL-frågan någon gång då? :)

Medlem sedan dec. 20001 626 inlägg
#7

sa dum man kan va ibland!
man tackar

Medlem sedan dec. 20001 626 inlägg
#8

en till fraga hur dodar jag sessions, da kundvagnen e tom?? enbart om kundvagnen e tom?? dvs om man har raderat samtliga produkter i kundvagnen. har gjort detta men funkar inte:

 set rs = conn.execute (sql)     
 
 if rs.eof then
 session.abandon
 else
 response.redirect "reviewOrder.asp"
 end if

/red

Medlem sedan juni 200032 967 inlägg
#9

Det borde funka det du har skrivit, men du måste göra en response.redirect direkt efter du anropar abandon.

mvh

Medlem sedan juli 20003 825 inlägg
#10

Din lösning verkar inte bullet proof...

Din räkning på ordrar börjar om varje gång ISS startas om eller varje gång en ny global.asa laddas upp till servern.

Med andra ord, du lär få en drös med ordrar med samma order nummer 1-20, 30 eller nåt och ett mindre antal runt 50 och över...

Tips från coachen
[order]
intID --- räknare

Medlem sedan dec. 20001 626 inlägg
#11

hmm du har en poang dar, sa d racker med att bra lagga in en raknare??

Medlem sedan juni 200032 967 inlägg
#12

Ja

260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)