Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/01/2014, 06:48
JUMASOL
 
Fecha de Ingreso: noviembre-2005
Mensajes: 889
Antigüedad: 18 años, 6 meses
Puntos: 8
Fallo en recogida de campos obligatorios

Hola.

Estoy montando un tpv y todo está casi resuelto salvo la recogida de dos campos:

Número de Operación e Importe.

Por más que busco el error no soy capaz de ver dónde está el fallo.

Os pongo aquí la página completa para ver a alguien se le ocurre qué es lo que falla. En la página de conexión con el banco aparece un error en que se me indica que "faltan campos", que son precisamente el importe y el número de operación.

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Credit Card - Payment Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<meta content="MSHTML 6.00.6000.16481" name="GENERATOR"/>


<script type="text/javascript">
<!--
function aceptar(){
/*	var a,b,c;
	a = document.formulariotpv.Num_operacion.value;
	b = document.formulariotpv.Importe.value;



		c = "comercio.php?Num_operacion=";
		c = c + a + "&Importe=" + b;
//	alert(c);
	document.formulariotpv.redirect.value = c;

//	alert(document.formulario.redirect.value);
*/

	document.formulariotpv.submit();
}
function Aleatorio()
	{
    var numero = "" + Math.random();
	if(numero[1] == ".")
		{
		numero = numero.substring(1,numero.length);
		}
	numero = numero.replace (".", "");
	while(numero[0] == "0")
		{
		numero = numero.substring(1,numero.length);
		}
	return(numero)	
	}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
-->
</script>

</head>
<body>
<div id="contenido"> 

  <div id="cuatro">

    <div id="form">
      <form name="formulario" action="http://cgi.thewebsite.com/FormMail.pl" method="post">
        <input type="hidden" value="968" name="Importe"/> 
        <input type="hidden" name="redirect"/> 
        <input type="hidden" value="[email protected]" name="recipient"/> 
        <input type="hidden" value="Purchase Attempt" name="subject"/> 
      <h3>opcion<input type="radio" name="Service Option" value="Opcion" onclick="document.formulario.Importe.value=968;"/></h3>
  
        <div id="fzaq"><p>Processing Operation Code</p><input name="Num_operacion"/></div>
        <div id="controls">
          <div id="fza"><input onclick="Javascript:aceptar()" type="button" value="SUBMIT" name="Send"/></div>
          <div id="fzb"><input type="reset" class="Button" value="ERASE"/></div>
        </div>
      </form>
      <form name="formulariotpv" action="comercio.php" method=post target=_blank">
        <input type="hidden" name="Num_operacion"/> 
        <input type="hidden" name="Importe"/> 
      </form>
    </div>
  </div>
<script type="text/javascript">

var a = Aleatorio();
document.formulario.Num_operacion.value = a;

</script>
</div>
</body>
</html>
El número aleatorio está bien generado, ya que aparece en el campo, pero luego no se incluye en la url de arriba.

Lo mismo con el importe, que no se incluye.

Muchas gracias.

Última edición por JUMASOL; 21/01/2014 a las 09:20