fotofobikko Posted October 31, 2011 Report Share Posted October 31, 2011 Estimados, estoy con un dilema... quizas es muy simple la solucion, pero para mi esta de locos y perdi todo el dia haciendo pruebas con este codigo: document.writeln('<INPUT TYPE="hidden" NAME="ITEM '+itemlist+'" VALUE="'+theitem+'"SIZE="40">');document.writeln('<INPUT TYPE="hidden" NAME="Cantidad '+itemlist+'" VALUE="'+thequantity+'" SIZE="40">');document.writeln('<INPUT TYPE="hidden" NAME="SubTotal'+itemlist+'" VALUE="'+alterError(itemtotal)+'" SIZE="40">'); La funcion de esto, es que ingresa las cantidades de productos como en un carro de compra, pero para enviarlo a traves de un formulario via email... Lo que necesito es sencillo... dejar todo en un linea, ya que al revisar el mail aparece asi: ITEM 1: COD8421Cantidad 1: 1SubTotal 1: 4990.00ITEM 2: COD138Cantidad 2: 50SubTotal 2: 249500.00ITEM 3: COD8425Cantidad 1: 1SubTotal 1: 4990.00y lo que necesito es al mail llegue asi: ITEM 1: COD8421 | Cantidad 1: 1 | SubTotal 1: 4990.00--------------------------------------------------------------------------------------ITEM 2: COD138 | Cantidad 2: 50 | SubTotal 1: 249500.00--------------------------------------------------------------------------------------ITEM 3: COD8425 | Cantidad 3: 1 | SubTotal 1: 4990.00 Onda mas ordenado.....OK, Ojala puedan ayudarme, ya que estoy en perdiendo tiempo con esta modificacion, y las pruebas que he realizado.... o desaparece cierta info, o se desordena mas. Espero comentarios,Saludos y de ante mano gracias. Link to comment Share on other sites More sharing options...
Kurorolucifer Posted October 31, 2011 Report Share Posted October 31, 2011 colocalo dentro de una tabla de una sola lineadocument.writeln('<table><tr><td><INPUT TYPE="hidden" NAME="ITEM '+itemlist+'" VALUE="'+theitem+'"SIZE="40"></td><td><INPUT TYPE="hidden" NAME="Cantidad '+itemlist+'" VALUE="'+thequantity+'" SIZE="40"></td><td><INPUT TYPE="hidden" NAME="SubTotal'+itemlist+'" VALUE="'+alterError(itemtotal)+'" SIZE="40"></td></tr></table>'); Link to comment Share on other sites More sharing options...
rkstro Posted October 31, 2011 Report Share Posted October 31, 2011 Pero de que forma estas enviando el email? lo unico que debes hacer es modificar el template del email para que te lo envie en el formato que quieres Link to comment Share on other sites More sharing options...
fotofobikko Posted October 31, 2011 Author Report Share Posted October 31, 2011 (edited) Kurorolucifer: Copie el código tal como lo dejaste, lo incluí en el html, pero sigue llegando todo como el original r_kstro: tal cual, el codigo original es lo que sale en el template y al tratar de modificarlo tiende adeformarse o deja de funcionar. dejare todo el codigo para que lo vean. Codigo Original <html><head><title>Formulario</title><style type="text/css">.body {font-family: Times New Roman;font-size: 10pt;font-style: normal;font-weight: normal;font-variant: normal;color: #000000;} .td {font-family: Times New Roman;font-size: 10pt;font-style: normal;line-height: normal;font-weight: normal;font-variant: normal;color: #000000;} </style><SCRIPT LANGUAGE="JavaScript"><!--function Enviar(form) {for (i = 0; i < form.elements.length; i++) {if (form.elements.type == "text" && form.elements.value == "") { alert("Por favor complete todos los campos del formulario"); form.elements.focus(); return false; }}form.submit();}// --></SCRIPT></head><body bgcolor="#FFFFFF" link="#32468D" vlink="#800080" class="body"><SCRIPT LANGUAGE="JavaScript"> function alterError(value) {if (value<=0.99) {newPounds = '0';} else {newPounds = parseInt(value);}newPence = parseInt((value+.0008 - newPounds)* 100);if (eval(newPence) <= 9) newPence='0'+newPence;newString = newPounds + '.' + newPence;return (newString);} function showItems() {index = document.cookie.indexOf("TheBasket");countbegin = (document.cookie.indexOf("=", index) + 1); countend = document.cookie.indexOf(";", index); if (countend == -1) { countend = document.cookie.length; }fulllist = document.cookie.substring(countbegin, countend);totprice = 0; itemlist = 0;for (var i = 0; i <= fulllist.length; i++) {if (fulllist.substring(i,i+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;var tax = itemtotal / 100 * (0 - 0); tax = Math.floor(tax * 100)/100totprice = totprice + itemtotal + tax;itemlist=itemlist+1;document.writeln('<INPUT TYPE="hidden" NAME="ITEM '+itemlist+'" VALUE="'+theitem+'"SIZE="40">');document.writeln('<INPUT TYPE="hidden" NAME="Cantidad '+itemlist+'" VALUE="'+thequantity+'" SIZE="40">');document.writeln('<INPUT TYPE="hidden" NAME="SubTotal '+itemlist+'" VALUE="'+alterError(itemtotal)+'" SIZE="40">');} else if (fulllist.substring(i,i+1) == ',') {theitem = fulllist.substring(itemstart, i);itemstart = i+1;} else if (fulllist.substring(i,i+1) == '#') {theprice = fulllist.substring(itemstart, i);itemstart = i+1;}} document.writeln('<INPUT TYPE="hidden" NAME="Total" VALUE="'+alterError(totprice)+'" SIZE="40">'); }function Total() {document.writeln(alterError(totprice));} </SCRIPT><center> <table border="0" cellpadding="0" cellspacing="0" width="640" class="body"> <tr> <td width="50%"><big><big>Formulario5</big></big></td> <td width="50%" align="right">[ <a href="carrito.htm">Carrito de Compra</a> | <a href="estado.htm">Estado</a> | Formulario ]</td> </tr> <tr> <td width="100%" colspan="2"> <hr size="1" color="#000000"> </td> </tr> <tr> <td width="100%" colspan="2"></td> </tr> </table> <FORM method="post" action="/cgi-bin/enviar.pl" target="_top"> <input type=hidden name="recipient" value=[email protected]><input type=hidden name="subject" value="Orden de Compra"><input type=hidden name="redirect" value="http://www.midominio.cl/gracias.htm"><input type=hidden name="env_report" value="REMOTE_HOST,REMOTE_ADDR,HTTP_USER_AGENT"> <table cols="2" width="370" class="body"> <td width="130"></td> <td width="270"> </td> </tr> <tr><td>Nombre</td><td><input type="text" name="nombre" size=34></td></tr><tr><td>Apellido</td><td><input type="text" name="apellido" size=34></td></tr><tr><td>Domicilio</td><td><input type="text" name="domicilio" size=34></td></tr><tr><td>Ciudad</td><td><input type="text" name="ciudad" size=34></td></tr><tr><td>Provincia</td><td><input type="text" name="provincia" size=34></td></tr><tr><td>Código Postal</td><td><input type="text" name="cp" size=34></td></tr><tr><td>País</td><td><input type="text" name="pais" size=34></td></tr><tr><td>E-mail</td><td><input type="text" name="email" size=34></td></tr><tr><td>Teléfono</td><td><input type="text" name="telefono" size=34></td></tr><tr><td>Fax</td><td><input type="text" name="fax" size=34></td></tr> <SCRIPT LANGUAGE="JavaScript">showItems();</SCRIPT> <tr> <td>Total:</td> <td>$ <SCRIPT LANGUAGE="JavaScript">Total()</SCRIPT> </td> </tr> <tr> <td><br><br></td> <td> <input type="button" value="Enviar" onClick="return Enviar(this.form)"> <input type="reset" value="Restablecer"> </td> </tr> </table></form> </center></body></html> OK espero comentarios... Edited October 31, 2011 by r_kstro Link to comment Share on other sites More sharing options...
rkstro Posted October 31, 2011 Report Share Posted October 31, 2011 Primero fotofobikko, no doble postees, esta PROHIBIDO. r_kstro: tal cual, el codigo original es lo que sale en el template y al tratar de modificarlo tiende adeformarse o deja de funcionar. dejare todo el codigo para que lo vean.Lo que pasa es que en tu codigo no estas mostrando el template de envio del email, porque lo que envia el email es el archivo enviar.pl, por lo que por medio de ese archivo se envia el correo, entonce es ese archivo que toma algun template, o forma el texto del mensaje a enviar, por lo que ahi tienes que modificar el formato del email a enviar.O simplemente buscar otra forma de enviar el correo, por ejemplo con php Link to comment Share on other sites More sharing options...
fotofobikko Posted November 7, 2011 Author Report Share Posted November 7, 2011 Primero fotofobikko, no doble postees, esta PROHIBIDO. r_kstro: tal cual, el codigo original es lo que sale en el template y al tratar de modificarlo tiende adeformarse o deja de funcionar. dejare todo el codigo para que lo vean.Lo que pasa es que en tu codigo no estas mostrando el template de envio del email, porque lo que envia el email es el archivo enviar.pl, por lo que por medio de ese archivo se envia el correo, entonce es ese archivo que toma algun template, o forma el texto del mensaje a enviar, por lo que ahi tienes que modificar el formato del email a enviar.O simplemente buscar otra forma de enviar el correo, por ejemplo con php Doctor, ya revise e hice muchas formas para cuadrar el resultado, pero no hay caso. oincluso elimine el archivo ENVIAR.PL, y el formulario llego sin problemas al mail, pero sin ninguna modificacion... creo que hay que ver alguna opcion externa en PHP, no la he encontrado... y la verdad me esta dando la lata y estoy pensando en dejarlo tal cual, y que el usuario o cliente, aprenda a interpretarla. Saludos, y gracias por la ayuda Link to comment Share on other sites More sharing options...
AshWilliams Posted November 8, 2011 Report Share Posted November 8, 2011 (edited) Es refácil cumpa, y si es un error de noobs pero aqui estamos para aprender XD....lo que pasa es que la instrucción writeln te envia un salto de carro al final de la instrucción(una pulsación enter, o sea, salta a la sgte linea)...tu code debería ir asi: document.write('<INPUT TYPE="hidden" NAME="ITEM '+itemlist+'" VALUE="'+theitem+'"SIZE="40">'); document.write('<INPUT TYPE="hidden" NAME="Cantidad '+itemlist+'" VALUE="'+thequantity+'" SIZE="40">'); document.writeln('<INPUT TYPE="hidden" NAME="SubTotal'+itemlist+'" VALUE="'+alterError(itemtotal)+'" SIZE="40">'); PS: por cierto, estoy cesante, soy de Viña, por si alguien sabe algo. Saludos Edited November 8, 2011 by rob_loser Link to comment Share on other sites More sharing options...
cañangasñangas Posted November 11, 2011 Report Share Posted November 11, 2011 no entiendo porque ocupar writeln, no seria correcto aplicar appendChild y manejar todo con fors, y esas vainas? y ocupar phpmailer para que llege como html o ocupar mail y ocupar una cabecera tipo $cabeceras = "From: [email protected]\r\nContent-type: text/html\r\n"; o estoy hablando puras weas? :huh: Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now