Foros del Web » Programando para Internet » Javascript »

carrito de la compra

Estas en el tema de carrito de la compra en el foro de Javascript en Foros del Web. Hola a todos,estoy diseñando un carrito de la compra y tengo algunas dudas,a ver si alguien puede aclararme el horizonte que lo tengo negro,veamos,he hecho ...
  #1 (permalink)  
Antiguo 04/04/2007, 02:32
 
Fecha de Ingreso: diciembre-2006
Mensajes: 1
Antigüedad: 17 años, 4 meses
Puntos: 0
carrito de la compra

Hola a todos,estoy diseñando un carrito de la compra y tengo algunas dudas,a ver si alguien puede aclararme el horizonte que lo tengo negro,veamos,he hecho un catalogo de uno 50 produtos,al cual he añadido una hoja de pedido,esta hecho con javascript,porque me estoy iniciando,y la idea global es que cuando esta hecho el pedido el cliente que lo ha realizado pulse el boton de ENVIAR y que me llegue a mi correo electronico,para yo una vez visto este,mandarle la confirmacion de su pedido adjuntandole como debe realizar el pago.
Entonces el problema me viene cuando el la ACCION yo le coloco mi direccion de e-mail,en el METODO le pongo la palabra POST,que creo que es donde debe estar el porblema,he hecho varias pruebas ficticias,mandando pedidos,pero ninguno me llega a mi correo,por eso os digo que aqui ya me pierdo,me gustaria saber donde puede estar el fallo.
Adjunto aqui el codigo para ver si alguno ha hecho algo parecido y me puede orientar,gracias de antemano.




Este codigo es el de la hoja de PEDIDO:


<script type="text/javascript">
function getcookieval (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function getcookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen)
{
var j = i + alen;
if (document.cookie.substring(i, j) == arg) return getcookieval (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}

function setcookie (name,value,expires,path,domain,secure) {
document.cookie = name + "=" + escape (value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}

function formatoeuros(input) {
var euros = Math.floor(input)
var tmp = new String(input)
for (var decimalAt = 0; decimalAt < tmp.length; decimalAt++) {
if (tmp.charAt(decimalAt)==".")
break;
}
var centimos = "" + Math.round(input * 100)
centimos = centimos.substring(centimos.length-2, centimos.length)
euros += ((tmp.charAt(decimalAt+2)=="9")&&(centimos=="00")) ? 1 : 0;

return euros + "." + centimos
}

function quitardelcarrito(RemOrder) {
if (confirm("El producto seleccionado va a ser eliminado de su carro de la compra.n¿Esta Vd. de acuerdo?")) {
numerodeorden = getcookie("numerodeorden");
for(i=RemOrder; i < numerodeorden; i++) {
nuevopedido1 = "Order." + (i+1);
nuevopedido2 = "Order." + (i);
datos = getcookie(nuevopedido1);
setcookie (nuevopedido2, datos, null, "/");
}
nuevopedido = "Order." + numerodeorden;
setcookie ("numerodeorden", numerodeorden-1, null, "/");
deletecookie(nuevopedido,"/");
location.href=location.href;
}
}

function visualizarcarrito() {
numerodeorden = 0;
subtotal=0;
preciototal=0;
numerodeorden = getcookie("numerodeorden");
tablas = "";
for (i = 1; i <= numerodeorden; i++) {
nuevopedido = "Order." + i;
datos = "";
datos = getcookie(nuevopedido);
ficha0 = datos.indexOf("|", 0);
ficha1 = datos.indexOf("|", ficha0+1);
ficha2 = datos.indexOf("|", ficha1+1);
campos = new Array;
campos[0] = datos.substring( 0, ficha0 );
campos[1] = datos.substring( ficha0+1, ficha1 );
campos[2] = datos.substring( ficha1+1, ficha2 );
campos[3] = datos.substring( ficha2+1, datos.length );
subtotal = subtotal + (campos[1] * campos[0]);
preciototal = formatoeuros(subtotal);
tablas += "<tr style='font: 9pt; text-align: justify; color=white'><td>" + campos[2] + "</td><td style='color=white'>"
+ campos[3] + "</td><td>" + campos[1]
+ " €</td><td><input type=text id='inputcarro' size=2 name="Cantidad"+ i +"" value=""
+ campos[0] + ""></td>"
+ "<td><input type=button id=boton value=" Eliminar " onClick="quitardelcarrito("+i+")">"
+ "&nbsp;<input type=button id=boton value=" Catálogo " onClick="parent.history.back()"></td>"
+ "<input type=hidden name="Referencia"+ i +"" value="" + campos[2] + "">"
+ "<input type=hidden name="Producto"+ i +"" value="" + campos[3] + "">"
+ "<input type=hidden name="Euros"+ i +"" value="" + campos[1] + "">";
}
document.write(tablas);
document.write("</td></tr><tr><td colspan=2 style='font: 9pt'>TOTAL CARRITO IVA INCLUIDO</td><td style='color=red'>");
document.write(preciototal);
document.write(" €</td><td colspan=2 style='font: 9pt; text-align: left; color=RED'> </td>");
}

function deletecookie(name, path, domain) {
if (getcookie(name)) {
document.cookie = name + "=" +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}
</script>

<script type="text/javascript">
visualizarcarrito();
</script>


Bueno gracias de antemano.
Un saludo.
Miguel
  #2 (permalink)  
Antiguo 04/04/2007, 02:38
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: carrito de la compra

Hola, bienvenido a los foros :

Para un carrito deberías tener un servidor que soporte otros lenguajes que permitan procesar formularios (perl, php, asp...), ya que un action con mailto: solo puede usarse con el método get, ya que los parámetros los pasa como si fuera por url... y con javascript tendrás muchas limitaciones, entre otras cosas que el cliente tenga desactivadas los cookies.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 03:43.