Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problemas con formulario

Estas en el tema de Problemas con formulario en el foro de PHP en Foros del Web. Hola, tengo un script que me calcula subtotales y total: <script> function calculo(cantidad,precio,inputtext,totaltext){ /* Parametros: cantidad - entero con la cantidad precio - entero con ...
  #1 (permalink)  
Antiguo 31/01/2015, 21:59
Avatar de narkiayun  
Fecha de Ingreso: enero-2015
Ubicación: Buenos Aires
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Problemas con formulario

Hola, tengo un script que me calcula subtotales y total:

<script>

function calculo(cantidad,precio,inputtext,totaltext){

/* Parametros:
cantidad - entero con la cantidad
precio - entero con el precio
inputtotal - nombre del elemento del formulario donde ira el total
*/

// Calculo del subtotal
subtotal = precio*cantidad;
inputtext.value=subtotal;

//Actualizar el total

total = eval(totaltext.value);
totaltext.value = total + subtotal;
}

</script>

<form name="MyForm"><TABLE WIDTH="100%" CELLPADDING="2" CELLSPACING="2">
<TR>
<TD colspan="4" ALIGN="RIGHT" VALIGN="MIDDLE"><div align="left">
<h2>Calcule el Arancel de su Trámite: </h2>
</div></TD>
</TR>
<TR>
<TD width="50%" ALIGN="left" VALIGN="MIDDLE">
*Cachorros con registro TDP</td>

<TD ALIGN="left" VALIGN="MIDDLE"><input type="text" size="3" id="reg50" value="0" onChange="calculo(this.value,precioreg50.value,tot alreg50,total);"></TD>
<TD ALIGN="left" VALIGN="MIDDLE"><input type="hidden" id="precioreg50" value="50"/>$50 C/U</TD>
<TD ALIGN="left" VALIGN="MIDDLE">$
<input type="text" id="totalreg50" value="0" size="8" readonly="readonly"></td>

</tr>
<TR>
<TD ALIGN="left" VALIGN="MIDDLE"> *Cachorros con registro TDP + TICA </TD>
<TD ALIGN="left" VALIGN="MIDDLE"><input type="text" size="3" id="reg300" value="0" onChange="calculo(this.value,precioreg300.value,to talreg300,total);"></TD>
<TD ALIGN="left" VALIGN="MIDDLE"><input type="hidden" id="precioreg300" value="300"/>$300 C/U</TD>
<TD ALIGN="left" VALIGN="MIDDLE">$
<input type="text" id="totalreg300" value="0" size="8" readonly="readonly"></TD>
</TR>
<TR>
<TD ALIGN="left" VALIGN="MIDDLE">TOTAL A ABONAR</TD>
<TD ALIGN="left" VALIGN="MIDDLE">&nbsp;</TD>
<TD ALIGN="left" VALIGN="MIDDLE">&nbsp;</TD>
<TD ALIGN="left" VALIGN="MIDDLE">$
<input name="total" type="text" id="total" value="0" size="8" readonly="readonly"></TD>
</TR>

</TABLE></form>

y necesito copiar el valor de total en este formulario

<FORM ENCTYPE="multipart/form-data" ACTION="FormMail.php"
METHOD="POST" >
<TABLE WIDTH="100%" CELLPADDING="2" CELLSPACING="2">

<TR>
<TD colspan="7" ALIGN="left" VALIGN="MIDDLE" class="Estilo5"><h2>Información de los Cachorros</h2></TD>
</TR>
<TR>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Nombre
<p>
<input name="kttn1_nombre" type="text" id="apellido3" size="25"
maxlength="35" />
</p></TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Raza
<p>
<input name="kttn1_raza" type="text" id="kttn1_raza" size="10"
maxlength="35" /></TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Sexo
<p><select id="kttn1_sexo" name="kttn1_sexo" >
<option selected="selected">Seleccione</option>
<option value="Macho">Macho</option>
<option value="Hembra">Hembra</option>
</select>
</p>
</TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Color
<p>
<input name="kttn1_color" type="text" id="apellido3" size="15"
maxlength="25" />
</p>
</TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">APTO CRIA
<p><select id="kttn1_aptocria" name="kttn1_aptocria" >
<option selected="selected">Seleccione</option>
<option value="sí">sí</option>
<option value="no">no</option>
</select>
</p>
</TD>
<TD ALIGN="left" VALIGN="MIDDLE">Registro TDP ( $50)
<input name="kttn1_reg_TDP_50" type="checkbox" id="kttn1_reg_TDP_50" value="50" /></TD>
</TR>
<TR>
<TD ALIGN="left" VALIGN="MIDDLE">Registro TDP +<br />
Reg TICA ($300)
<input name="kttn1_reg_tdp_tica_300" type="checkbox" id="kttn1_reg_tdp_tica_300" value="300" /></TD>
</TR>

<TR>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Nombre
<p>
<input name="kttn10_nombre" type="text" id="apellido3" size="25"
maxlength="35" />
</p></TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Raza
<p>
<input name="kttn10_raza" type="text" id="kttn10_raza" size="10"
maxlength="35" />
</p></TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Sexo
<p><select id="kttn10_sexo" name="kttn10_sexo" >
<option selected="selected">Seleccione</option>
<option value="Macho">Macho</option>
<option value="Hembra">Hembra</option>
</select>
</p>
</TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">Color
<p>
<input name="kttn10_color" type="text" id="apellido3" size="15"
maxlength="25" />
</p>
</TD>
<TD rowspan="2" ALIGN="left" VALIGN="MIDDLE">APTO CRIA
<p><select id="kttn10_aptocria" name="kttn10_aptocria" >
<option selected="selected">Seleccione</option>
<option value="sí">sí</option>
<option value="no">no</option>
</select>
</p>
</TD>
<TD ALIGN="left" VALIGN="MIDDLE">Registro TDP ( $50)
<input name="kttn10_reg_TDP_50" type="checkbox" id="kttn10_reg_TDP_50" value="Sí" /></TD>
</TR>
<TR>
<TD ALIGN="left" VALIGN="MIDDLE">Registro TDP +<br />
Reg TICA ($300)
<input name="kttn10_reg_tdp_tica_300" type="checkbox" id="kttn10_reg_tdp_tica_300" value="Sí" /></TD>
</TR>

<TR>
<TD colspan="5" ALIGN="RIGHT" VALIGN="MIDDLE" class="Estilo5"><h3>Total a abonar</h3></TD>
<TD ALIGN="left" VALIGN="MIDDLE" class="Estilo5">&quot;acá va el valor de 'total'&quot;</TD>
</TR>
<TR>
<TD colspan="6" VALIGN="MIDDLE" class="Estilo5"><div align="justify">
<h3><strong><em><u>Declaración Jurada</u></em></strong><em>: Declaro conocer y aceptar el reglamento de registro genealógico TICAdelPlata y que todos los datos enviados a través es este formulario son correctos.</em>*
<input name="DeclJur" type="checkbox" id="DeclJur" value="Sí" />
</h3>
</div></TD>
</TR>
</TABLE>
<DIV STYLE="text-align: center">
<p><strong>Observaciones:</strong><BR>
<TEXTAREA NAME="observaciones" ROWS="5" COLS="50" id="observaciones"></TEXTAREA>
</p>
<p align="left"><strong>*CAMPOS OBLIGATORIOS<BR>
</strong></p>
<TABLE WIDTH="100%" BORDER="0" CELLPADDING="3" CELLSPACING="3"
BGCOLOR="#D7CCA5">
<TR>
<TD ALIGN="CENTER"><INPUT TYPE="SUBMIT"
VALUE="Click UNA vez para enviar Form." HEIGHT="25" WIDTH="35" BORDER="5">
<INPUT TYPE="RESET" VALUE="Limpiar Form" HEIGHT="25" WIDTH="35" BORDER="5">
<BR>
</TD>
</TR>
</TABLE></DIV> </FORM>

y no me sale, por favor, alguien puede enseñarme cómo hacer? gracias!!
  #2 (permalink)  
Antiguo 01/02/2015, 02:55
 
Fecha de Ingreso: agosto-2013
Mensajes: 150
Antigüedad: 10 años, 8 meses
Puntos: 29
Respuesta: Problemas con formulario

Prueba.
Código HTML:
Ver original
  1. <td id="tdTotal" align="left" valign="middle" class="Estilo5">&quot;acá va el valor de 'total'&quot;</td>
Código Javascript:
Ver original
  1. function calculo(cantidad, precio, inputtext, totaltext) {
  2.   var tdTotal = document.getElementById('tdTotal'); // nuevo
  3.   // Calculo del subtotal
  4.   var subtotal = precio * cantidad;
  5.   inputtext.value = subtotal;
  6.   var total = document.getElementById('total');
  7.   //Actualizar el total
  8.   total = eval(totaltext.value);
  9.   totaltext.value = total + subtotal;
  10.   tdTotal.innerHTML = totaltext.value; // nuevo
  11. }
Nota:
Tienes que prevenir el ingreso de valores no numéricos o te dará: NaN
No debes repetir los id: apellido3

Última edición por bathorz; 01/02/2015 a las 03:12
  #3 (permalink)  
Antiguo 01/02/2015, 06:49
Avatar de narkiayun  
Fecha de Ingreso: enero-2015
Ubicación: Buenos Aires
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Problemas con formulario

Hola Bathorz, gracias por tu respuesta, hice los cambios que me indicaste y me muestra el total en la pantalla, eso está perfecto, lo que me gustaría hacer ahora es tranformar ese valor en un campo del formulario, para que al enviarlo por email, me envíe también el total a pagar junto con toda la información que recibo. No sé si me explico bien, suelo hacer formularios de contacto y no mucho más que eso, pero esto que me piden supera ampliamente lo poco que sé de PHP, gracias de antemano por tu colaboración
  #4 (permalink)  
Antiguo 01/02/2015, 12:36
Avatar de narkiayun  
Fecha de Ingreso: enero-2015
Ubicación: Buenos Aires
Mensajes: 3
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Problemas con formulario

Hola, ya lo solucioné, en vez de hacer 2 formularios por separado para la suma y luego enviar datos por email, hice uno solo.
Muchas gracias por tu respuesta Bathorz fue muy util

Etiquetas: formulario, registro, select
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 09:12.