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

problema con carrito de la compra

Estas en el tema de problema con carrito de la compra en el foro de ASP Clásico en Foros del Web. Buenas a todos debisos a mis escasos conocimientos de .asp, me he baado una version demo del carrito de midicart, el cual tiene la limitacion ...
  #1 (permalink)  
Antiguo 12/04/2007, 16:09
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
problema con carrito de la compra

Buenas a todos

debisos a mis escasos conocimientos de .asp, me he baado una version demo del carrito de midicart, el cual tiene la limitacion de que en el formualrio dinal no te envia d
el detalle de los articulos, solo el importe y los datos del formulario.


ME podriais echar un cable???

El formulario final dice algo asi mediante una funcion javascrpt/asp:
Código:
<!-- #INCLUDE FILE="settings.asp" -->

<html>

<head>

<TITLE>MidiCart ASP - Evaluation Version</TITLE>

<link rel="stylesheet" HREF="master_style.css">

</head>

<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#660101" VLINK="#660101" ALINK="#F70404">

<%
Function RandNo()
Randomize
RandNo = Int(99999999 * Rnd + 3)
End Function
%>



<form onSubmit="return form_validator(this)" action="order_final.asp" method=post>

<INPUT TYPE="hidden" NAME="order_id" VALUE="<%=RandNo()%>" SIZE="40">




<script LANGUAGE="JavaScript">

	function alterError(value) {
		if (value<=0.99) {
			newDollar = '0';
		} else {
			newDollar = parseInt(value);
		}
		newCent = parseInt((value+.0008 - newDollar)* 100);
		if (eval(newCent) <= 9) newCent='0'+newCent;
		newString = newDollar + '.' + newCent;
		return (newString);
	}

	// showItems in orderform

	function showItems() {
		index = document.cookie.indexOf("ShoppingBasket");
		countbegin = (document.cookie.indexOf("=", index) + 1);
        	countend = document.cookie.indexOf(";", index);
        	if (countend == -1) {
            		countend = document.cookie.length;
        	}
		fulllist = document.cookie.substring(countbegin, countend);
		subtotal = 0;
		subweight = 0;
		document.writeln('<table cellpadding="2" cellspacing="1" border="0">');

		document.writeln('<TR><TD BGCOLOR="#B3B3B3"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_qty%></b></FONT></TD><TD  BGCOLOR="#B3B3B3"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_code_no%></b></FONT></TD><TD BGCOLOR="#B3B3B3"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_item%></b></FONT></TD><TD BGCOLOR="#B3B3B3"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_price%>&nbsp;<%=txt_currency%></b></FONT></TD><td BGCOLOR="#B3B3B3"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_total%></b></FONT></td></TR>');
		itemlist = 0;
		for (var i = 0; i <= fulllist.length; i++) {
			if (fulllist.substring(i,i+1) == '[') {
				thisitem = 1;
				itemstart = i+1;
			} else if (fulllist.substring(i,i+1) == ']') {
				itemend = i;
				thequantity = fulllist.substring(itemstart, itemend);
				itemtotal = 0;
				itemtotal = (eval(theprice*thequantity));
				temptotal = itemtotal * 100;
				subtotal = subtotal + itemtotal;
				weighttotal = 0;
				weighttotal = (eval(theweight*thequantity));
				subweight = subweight + weighttotal;
				itemlist=itemlist+1;
				document.write('<tr><td align=middle BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+thequantity+'</FONT></td>');
				document.writeln('<td BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><a href=item_show.asp?code_no='+thenumber+'>'+thenumber+'</A></FONT></td><td align=left BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif"><a href=item_show.asp?code_no='+thenumber+'>'+theitem+'</A></FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+theprice+'</FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+alterError(itemtotal)+'</FONT></td></tr>');
		  
			} else if (fulllist.substring(i,i+1) == '|') {
				if (thisitem==1) theitem = fulllist.substring(itemstart, i);
				if (thisitem==2) theprice = fulllist.substring(itemstart, i);
				if (thisitem==3) thenumber = fulllist.substring(itemstart, i);
				if (thisitem==4) theweight = fulllist.substring(itemstart, i);
				thisitem++;
				itemstart=i+1;
			}
		}

		
		totprice = (Math.round(subtotal*100)/100);
	      shipping = subweight+<%=add_freight%>;
		totalcost = (totprice+shipping);
            tax = (Math.round(totalcost*<%=add_tax%>)/100);


		document.writeln('<tr><td align=right BGCOLOR="#B3B3B3" colspan=4><font size="-2" face="Verdana, Arial, 		Helvetica, sans-serif"><b><%=txt_product_total%></b></FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+alterError(totprice)+'</FONT></td></tr>');

		document.writeln('<tr><td align=right BGCOLOR="#B3B3B3" colspan=4><font size="-2" face="Verdana, Arial, 		Helvetica, sans-serif"><b><%=txt_shipping%></b></FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+alterError(shipping)+'</FONT></td></tr>');

<%if add_tax > "0" then%>
		document.writeln('<tr><td align=right BGCOLOR="#B3B3B3" colspan=4><font size="-2" face="Verdana, Arial, 		Helvetica, sans-serif"><b><%=txt_tax%></b></FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+alterError(tax)+'</FONT></td></tr>');
<% end if %>

		document.writeln('<tr><td align=right BGCOLOR="#B3B3B3" colspan=4><font size="-2" face="Verdana, Arial, 		Helvetica, sans-serif"><b><%=txt_grand_total%>&nbsp;<%=txt_currency%></b></FONT></td><td align=right BGCOLOR="#D9D9D9"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">'+alterError(totalcost+tax)+'</FONT></td></tr>');

  		document.writeln('<INPUT TYPE="hidden" NAME="total" VALUE="'+alterError(totalcost+tax)+'" SIZE="40">');

		document.writeln('</TABLE>');

	}

</script>



<center><font size="5" face="Verdana, Arial, Helvetica, sans-serif"><b><%=txt_order_form%></B></FONT>
<BR><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>Invoice / Money Order</B></FONT></center>
<HR WIDTH=90% size=1 COLOR="#000000">
<CENTER>
<script LANGUAGE="JavaScript">
	showItems();
</script></CENTER>
<BR>
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<DIV align="center"><%=txt_provide_information%></DIV>
</FONT>
<CENTER>

y el formulario que recupera y envia mediante ASPMAIL es este:


Código:
<!-- #INCLUDE FILE="settings.asp" -->


<%

	strHost = smtp_server
		
      Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
	
	Mailer.RemoteHost = strHost
  
	Mailer.FromName = Request.form("email")
	Mailer.Subject = "Online Order - " & company_name & " - " &Request.form("order_id")
         Mailer.FromAddress = Request.form("email")
         Mailer.AddRecipient Request.form("namn"), Request.form("email")
	Mailer.AddCC "", "" & receipt & ""
	Mailer.BodyText = "Invoice - Order Number = "&Request.form("order_id")& vbcrlf & vbcrlf&_ 
	Request.form("email")& vbcrlf&_
	Request.form("company")& vbcrlf&_ 
	Request.form("name")& vbcrlf&_ 
	Request.form("address")& vbcrlf&_ 
	Request.form("address2")& vbcrlf&_ 
	Request.form("city")& vbcrlf&_ 
	Request.form("state")& vbcrlf&_ 
	Request.form("zip")& vbcrlf&_ 
	Request.form("country")& vbcrlf&_ 
	Request.form("phone")& vbcrlf & vbcrlf&_ 
	Request.form("comment")& vbcrlf & vbcrlf&_
	"Total " & txt_currency & " " & Request.form("total") & vbcrlf & vbcrlf&_
	"Order" & vbcrlf&_ 


	"Sorry, no items in this demo order"& vbcrlf & vbcrlf&_
	
      if Mailer.SendMail then 
      Response.redirect "response.asp"
       else 
      Response.Write "Mail send failure. Error was " & Mailer.Response
      end if 

%>

¿alguien sabe como puedo recuperar los items para que este form los envio junto al resto de los datos??


muchas gracias
  #2 (permalink)  
Antiguo 12/04/2007, 21:36
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 5 meses
Puntos: 16
Re: problema con carrito de la compra

osea, lo que quieres es romper la limitacion de la version de evaluacion? dudo que en este foro se te pueda ayudar con eso...
  #3 (permalink)  
Antiguo 12/04/2007, 23:06
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 3 meses
Puntos: 88
Re: problema con carrito de la compra

Cita:
Iniciado por sjam7 Ver Mensaje
osea, lo que quieres es romper la limitacion de la version de evaluacion? dudo que en este foro se te pueda ayudar con eso...
me uno a sjam7....
por que mejor no intentas realizar un codigo similar

no seria mas facil para ti???...

practicarias y de paso... tu sabrias en caso de error donde esta el problema????

suerte
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #4 (permalink)  
Antiguo 13/04/2007, 04:55
 
Fecha de Ingreso: julio-2003
Ubicación: Barcelona
Mensajes: 142
Antigüedad: 20 años, 10 meses
Puntos: 1
Re: problema con carrito de la compra

OK, acepto vuestras respuestas, pero.........

¿por donde empiezo?

Soy capaz de Crear el listado con los productos en una tabla y ponerle en una columna el addd to cart pero que me lo almanece en algun lado y despues le pùedas poner un formaulario con los campos y que le envie todo junto mediante ASPmail y lo inserte como un registro nuevo no tengo ni idea

¿me podeis echar un cable en esta fase?

muchas gracias
  #5 (permalink)  
Antiguo 13/04/2007, 08:06
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Re: problema con carrito de la compra

Algunos enlaces interesantes:

- Carrito de Compras en ASP

- Cómo hacer un carrito de compras en ASP

- Carrito con Cookies

- Comersus: Free ASP Shopping Cart




Suerte!
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
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 19:01.