Foros del Web » Programando para Internet » ASP Clásico »

Por que suma de 2 en 2?

Estas en el tema de Por que suma de 2 en 2? en el foro de ASP Clásico en Foros del Web. Hola amigos, Estoy haciendo un carrito de compra.Pero al añadir un producto, me sale como cantidad 2 y cada vez que añado un se suma ...
  #1 (permalink)  
Antiguo 13/08/2005, 05:09
 
Fecha de Ingreso: abril-2004
Ubicación: zaragoza
Mensajes: 36
Antigüedad: 20 años, 1 mes
Puntos: 0
Por que suma de 2 en 2?

Hola amigos,
Estoy haciendo un carrito de compra.Pero al añadir un producto, me sale como cantidad 2 y cada vez que añado un se suma de 2 en 2.

Alli va el Script:



<html>
<head>
<title>Mostrar el carrito de compra</title>
</head>
<body>
<%@LANGUAGE="VBSCRIPT"%>
<%Response.Buffer=True%>

<%
Dim clave,gasto,total,carrito
Dim subtotal,sql,conexion,rs


gasto=5
total=0
subtotal=0
set conexion=Server.Createobject("adodb.connection")
strconn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("Amigos.mdb")
conexion.open strconn

id=request.QueryString("variable")
response.Write(id)

if isobject(Session("carrito")) then
set carrito=Session("carrito")
else
set carrito=Server.CreateObject("Scripting.Dictionary" )
end if



response.Write("<TABLE BORDER=1 CELLPADDING=1 CELLSPACING=1>")
response.Write("<TR><TD>Artículo</TD>")
response.Write("<TD>Cantidad</TD>")
response.Write("<TD>Precio/unidad</TD>")
response.Write("<TD>Quitar del carrito</TD>")
response.Write("<TD>Total</TD></TR>")

for each id in carrito
subtotal=0
if carrito.Exists(id) then
carrito(id)=carrito(id)+1
else
carrito.add id,1
end if

sql="select * from producto where codigo='"&request.QueryString("variable")&"'"
set rs=conexion.execute(sql)
' response.Write(sql)
response.Write("<TR>")
response.Write("<TD>"&rs("descripcion")&"</TD>")
response.Write("<TD>"&carrito(variable)&"</TD>")
response.Write("<TD>"&rs("Precio")&"</TD>")
response.Write("<TD><A HREF=shop.asp?>Quitar Uno</A>")
response.Write("<A HREF=shop.asp?ac=sacar&prod=variable&cant=carrito( variable)>Quitar Todos</A>")
response.Write("</TD>")

subtotal=CSng(FormatNumber(carrito(variable))*rs.F ields("precio"))
total=total + subtotal
response.Write("<TD>"&subtotal&"</TD></TR>")

next

if carrito.Count > 0 then
rs.close
set rs=nothing
end if

Response.Write("<TR><TD COLSPAN=4>Gastos de envío</TD>")
Response.Write("<TD>")

if total=0 then
Response.Write("0") ' Sin compra no hay gastos de envío
else
Response.Write(gasto)
end if

Response.Write("</TD>")
Response.Write("<TR><TD COLSPAN=4><B>Total:</B></TD>")
Response.Write("<TD>")

if total=0 then
Response.Write("0")
else
Response.Write(total+gasto)
end if
Response.Write("</TD></TABLE>")

'response.Write(carrito)
conexion.Close
set conexion=nothing

%>

<a href="comprar.asp">Volver</a>


</body>
</html>



Gracias responderme.
Buen Fin de Semana
__________________
bibiche
  #2 (permalink)  
Antiguo 13/08/2005, 13:10
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 5 meses
Puntos: 16
aqui

if carrito.Exists(id) then
carrito(id)=carrito(id)+1
else
carrito.add id,1
end if

le sumas al id 1? no seria a cantidad? no se, solo pregunto, checando tu codigo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:10.