Hvordan sletter jeg varer i min indkøbskurv
Jeg har en indkøbskurv i xml på et asp site. Den fungerer upåklageligt. Har fået koden til den andetsteds. Nu er jer ikke dreven i xml og xml klad. Så kan ikke overskue hvordan jeg laver en "slet vare"-funktion og en "slet alt"-funktion. Er der nogen der kan kommer med en let løsning på nedenstående kode. Jeg har gjort klar til grafikken. Mangler bare koden :-) Thanx...(ps. undskyld rodet...har ikke fået ryddet op)
<%
'------------------------------------------------------
'hent eller lav en indkøbskurv
'------------------------------------------------------
function loadxmlbag()
set xmldoc=server.createobject("microsoft.xmldom")
if not isempty(session("bagitems")) then
xmldoc.loadxml cstr(session("bagitems"))
set bagitems=xmldoc.documentelement
else
set bagitems=xmldoc.createelement("bagitems")
set xmldoc.documentelement=bagitems
end if
set loadxmlbag=bagitems
end function
'/////////////////////////////////////////////////////////
' MAINSHOPPEN
'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
'Hent eller lav indkøbskurven
set bagitems=loadxmlbag()
'Tilføj eller modificer varer
if request.servervariables("CONTENT_LENGTH") >0 then
dvareid=request.form("vareid")
backlink=request.form("backlink")
select case trim(request.form("do"))
case "Tilbage til shoppen"
printbag bagitems
recalcbag bagitems
response.clear
if backlink="1" then
refer="index.asp"
else
refer="closeup.asp?vareid="&dvareid
end if
response.redirect refer
case "opdater"
recalcbag bagitems
case "næste trin"
' recalculate and then redirect to checkout
recalcbag bagitems
endShop=true
end select
else
'products are added using the query string
dvareid=trim(request.querystring("vareid"))
addtlproduct dvareid, bagitems
end if
'--------------------------
' Tjek om kurven skal vises
'--------------------------
session.contents("putinbasket")=""
basket=""
basket=request.querystring("basket")
if basket <> "true" then
Response.Write("<script>java script:alert('Varen er tilføjet i indkøbskurven')</script>")
session.contents("putinbasket")=true
varecount=0
session.contents("antalvarer")=0
for each item in bagitems.childnodes
varecount=varecount+item.text
session.contents("antalvarer")=varecount
next
back_adress=Request.ServerVariables("HTTP_REFERER")
Response.Write("<script>java script:history.go(-1);</script>")
end if
'--------------------------
'--------------------------
session("bagitems")=bagitems.xml
if bagitems.haschildnodes=false then
'-------------------- "Der er ingen varer i kurven!"-----------------------
if backlink="1" then
ref="closeupvin.asp"
else
ref="closeup.asp?vareid="&dvareid
end if
call ingenVarer
'--------------------------------------------------------------------------------
else
if endShop=true then
call printEndShop(bagitems)
else
'if bagitems.haschildnodes and endShop=false then
printbag bagitems
end if
end if
'-------------------
sub ingenVarer
udskrivIngen="<table width='80%' border='0' cellspacing='2' cellpadding='10'"
udskrivIngen=udskrivIngen&"align='center' height='69%' bgcolor='#ffffff'>"
udskrivIngen=udskrivIngen&"<tr valign='top'>"
udskrivIngen=udskrivIngen&"<td align='center'><font size='2'><br><br><br><br>Du har ingen varer i kurven.</font></td></tr>"
udskrivIngen=udskrivIngen&"<tr valign='top' height='10%'>"
udskrivIngen=udskrivIngen& "<td align='right' valign='bottom' height='10%'></td></tr></table>"
response.write udskrivIngen
session.contents("antalvarer")=0
end sub
'////////////////////////////////////////////////////////////////
' S U B S
'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
'----------------------------------------------------------------
'Tilføj til indkøbskurven
'----------------------------------------------------------------
sub addproducttobag (avarproduct,bagitems)
'first check if the product isn't already in the bag
set nodefind=bagitems.selectnodes("vare[@vareid=""" & dvareid & """]")
if not nodefind.length > 0 then
set product=xmldoc.createelement("vare")
set attr=xmldoc.createattribute("vareid")
attr.text=avarproduct(0,0)
product.attributes.setnameditem(attr)
set attr=xmldoc.createattribute("varenummer")
attr.text=server.htmlencode(avarproduct(1,0))
product.attributes.setnameditem(attr)
set attr=xmldoc.createattribute("kategoriid")
attr.text=server.htmlencode(avarproduct(2,0))
product.attributes.setnameditem(attr)
set attr=xmldoc.createattribute("betegnelse")
attr.text=server.htmlencode(avarproduct(3,0))
product.attributes.setnameditem(attr)
set attr=xmldoc.createattribute("beskrivelse")
attr.text=server.htmlencode(avarproduct(4,0))
product.attributes.setnameditem(attr)
set attr=xmldoc.createattribute("pris")
attr.text=server.htmlencode(avarproduct(5,0))
product.attributes.setnameditem(attr)
product.text="1"
bagitems.appendchild(product)
end if
end sub
'----------------------------------------------------------------
'Udregn den nye værdi
'----------------------------------------------------------------
sub recalcbag(bagitems)
for each item in bagitems.childnodes
nqty=trim(request.form("qty"& item.getattribute("vareid")))
if nqty="" then bagitems.removechild item
if "" <> nqty and isnumeric (nqty) then
if nqty < 1 then
bagitems.removechild item
else
item.text=nqty
end if
end if
next
dvareid=request.form("vareid")
end sub
'-------------------------------------------------------
' Tjek om produktet findes
'-------------------------------------------------------
dvareid=trim(request.querystring("vareid"))
sub addtlproduct(dvareid,bagitems)
bvalid=true
if ""= dvareid or not isnumeric(dvareid) then
bvalid=false
else
set rs=server.createobject("ADODB.recordset")
sqlvare="select * from vare where vareid=" & dvareid
conn.open
rs.open sqlvare,conn
if rs.eof and rs.bof then
bvalid=false
else
avarproduct=rs.getrows()
end if
conn.close
set rs=nothing
set conn=nothing
end if
'Hvis produkt er ok
if bvalid then
addproducttobag avarproduct,bagitems
end if
end sub
'----------------------------------------------------------------
'udskriv indholdet af indkøbskurven
'----------------------------------------------------------------
sub printbag(bagitems)
%>
<form method="post" action ="" request.servervariables("script_name")>
<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="30">
<div align="center">
antal</div>
</td>
<td width="250">
<div align="center">
produkt</div>
</td>
<td width="85">
<div align="center">
stk.pris</div>
</td>
<td width="85">
<div align="center">
ialt</div>
</td>
<td width="30">
<div align="center">
slet</div>
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0">
<%
varecount=0
session.contents("antalvarer")=0
for each item in bagitems.childnodes
pris=item.getattribute("pris")
varecount=varecount+item.text
nsubtotal=item.text * pris
'prismoms=nsubtotal*1.25
ntotal=ntotal+nsubtotal
session.contents("totalbeloeb")=ntotal
session.contents("antalvarer")=varecount
%>
<tr>
<td class="boks2_lille_margin" width="30">
<div align="center">
<input type="text" name='qty<%=item.getattribute("vareid")%>' value="<%=item.text%>" size="3"></div>
</td>
<td class="boks2_lille_margin" width="240">
<div align="left">
<%=item.getattribute("betegnelse")%></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<%=formatcurrency(pris)%></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<%=formatcurrency(nsubtotal)%></div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
<img src="grafik/slet_vare.gif" alt="Slet vare">
</div>
</td>
</tr>
<%
next
ntotal=ntotal+session.contents("fragt")
session.contents("totalbeloeb")=ntotal
%>
<!-- Fragt -->
<tr>
<td width="30">
</td>
<td height="35" class="boks2_lille_margin" width="240">
<div align="left">
fragt</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<%=formatcurrency(session.contents("fragt"))%></div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
</div>
</td>
</tr>
<!-- -->
<!-- Total -->
<tr>
<td height="25" width="30">
</td>
<td class="boks2_lille_margin" width="240">
<div align="left">
<b>total</b></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<b><%=formatcurrency(ntotal)%></b></div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
<img src="grafik/slet_alt.gif" alt="Slet alle varer i kurven">
</div>
</td>
</tr>
<!-- -->
</table>
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div align="left">
(Alle priser er i danske kr. inkl. moms)
</div>
</td>
</tr>
</table>
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<br><br><br><br>
<div align="right">
<p><input type=submit name="do" value="opdater" tabindex="1"> <input type=submit name="do" value="næste trin" tabindex="2"></p>
</div>
</td>
</tr>
</table>
<p><input type="hidden" name="vareid" value="422"></p>
<input type="hidden" name="backlink" value="">
</form>
<%
end sub
'----------------------------------------------------------------
'udskriv slutresultat af indkøb
'----------------------------------------------------------------
sub printEndShop (bagitems)
%>
<form method="post" action ="customertype.asp">
<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="30">
<div align="center">
antal</div>
</td>
<td width="250">
<div align="center">
produkt</div>
</td>
<td width="85">
<div align="center">
stk.pris</div>
</td>
<td width="85">
<div align="center">
ialt</div>
</td>
<td width="30">
<div align="center">
slet</div>
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0">
<%for each item in bagitems.childnodes
pris=item.getattribute("pris")
session.contents("antalvarer")=session.contents("antalvarer")+1
antalvarer=antalvarer+item.text
'response.write "antal varer er lige nu="&antalvarer
nsubtotal=item.text * pris
'prismoms=nsubtotal*1.25
ntotal=ntotal+nsubtotal
%>
<tr>
<td class="boks2_lille_margin" width="30">
<div align="center">
<input type="text" name='qty<%=item.getattribute("vareid")%>' value="<%=item.text%>" size="3"></div>
</td>
<td class="boks2_lille_margin" width="240">
<div align="left">
<%=item.getattribute("betegnelse")%></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<%=formatcurrency(pris)%></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<%=formatcurrency(nsubtotal)%></div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
<img src="grafik/slet_vare.gif" alt="klik her for at slette denne vare">
</div>
</td>
</tr>
<%next%>
<!-- Fragt -->
<tr>
<td width="30">
</td>
<td height="35" class="boks2_lille_margin" width="240">
<div align="left">
fragt</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
??</div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
</div>
</td>
</tr>
<!-- -->
<!-- Total -->
<tr>
<td height="25" width="30">
</td>
<td class="boks2_lille_margin" width="240">
<div align="left">
<b>total</b></div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
</div>
</td>
<td class="boks2_lille_margin" width="85">
<div align="center">
<b><%=formatcurrency(ntotal)%></b></div>
</td>
<td class="boks2_lille_margin" width="30">
<div align="center">
<img src="grafik/slet_alt.gif" alt="klik her for at slette alle varer i kurven">
</div>
</td>
</tr>
<!-- -->
</table>
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div align="left">
(Alle priser er i danske kr. inkl. moms)
</div>
</td>
</tr>
</table>
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<br><br><br><br>
<div align="right">
<p><input type=submit name="do" value="opdater"> <input type=submit name="do" value="næste trin"></p>
</div>
</td>
</tr>
</table>
<p><input type="hidden" name="vareid" value="422"></p>
<input type="hidden" name="backlink" value="">
</form>
<%
response.redirect("customertype.asp")
end sub
%>
