Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/04/2008, 03:34
paquedo
 
Fecha de Ingreso: septiembre-2006
Ubicación: Madrid
Mensajes: 14
Antigüedad: 17 años, 7 meses
Puntos: 0
Formulario PHP+Javascript no me envía información

Hola compañeros.

Tengo una página principal en PHP, se trata de un formulario dinámico que según se van introduciendo datos, van apareciendo nuevas opciones e información.

La cosa está montada así:

La página principal tiene 5 divs, inicialmente con una información.

En el primer div, tengo una caja de selección, al elegir una opción, se autorecarga la página y en el segundo div aparecen 2 cajas de texto inactivas, al pinchar en cada una se despliega un calendario (hecho en ajax) para elegir una fecha. También tengo otras 4 cajas de texto y un botón de calcular presupuesto. Mediante una funcion de ajax, me carga en el siguiente div otro fichero php.

Al pulsar el botón anterior, en el tercer div me aparece el presupuesto calculado según lo elegido en el anterior div, se conecta a BD para coger precios y etc. Al final de este div tengo un botón de aceptar presupuesto. Mediante la misma función de ajax, me carga en el siguiente div otro fichero php y le traspasa el valor de algunas variables.

Al pulsar el botón de aceptar presupuesto, en el cuarto div me aparece un formulario para introducir datos de contacto y al final, un botón de aceptar presupuesto. Al pulsar este botón me debería mandar a otro fichero php, la información obtenida en el 3er div y la información de este formulario de contacto.

En el último fichero php, que es mostrado en el 5º div, me recibe bien la información calculada en el 3er div, pero no me recibe la información introducida en el formulario del 4º div.

Todo está realizado con solo una recarga de la página. ¿Se os ocurre porque no me manda el contenido del formulario?

Como es mucho código, solo os pego unos trozos:

pagina principal.php (5º div)

echo "<div id=\"bungalow_fin\"style=\"text-align: center; padding: 6px; background-color: #fffff0; border-style: dashed; border-width:thin;\" >";
echo "Finalización de Reserva";
echo "</div>";
*******************************************
formulario mostrado en el 4º div:
$bungalow_type=$_GET[bungalow_type];
$begin_date=$_GET[begin_date];
$end_date=$_GET[end_date];
$num_dias=$_GET[num_dias];
$nom_extras=$_GET[nom_extras];
$subtotal=$_GET[subtotal];
$total=$_GET[total];
$anticipo=$_GET[anticipo];

echo "<script language=\"JavaScript\" src=\"funciones/ajax.js\"></script>";

echo "<form action=\"javascript:get(document.getElementById('m yform'));\" name=\"myform\" id=\"myform\">";
//echo "<form name=\"datos\" action=\"post\">";
echo "<p>Datos Personales: </p>";
echo "<p>Nombre: <input type=\"text\" name=\"nombre\" size=\"20\"></p>";
echo "<p>Apellidos: <input type=\"text\" name=\"apellidos\" size=\"30\"></p>";
echo "<p>Dirección: <input type=\"text\" name=\"direccion\" size=\"40\"></p>";
echo "<p>Localidad: <input type=\"text\" name=\"localidad\" size=\"20\"></p>";
echo "<p>Código Postal: <input type=\"text\" name=\"codpostal\" size=\"7\"></p>";
echo "<p>Ciudad: <input type=\"text\" name=\"ciudad\" size=\"20\">";
echo "<p>País: <input type=\"text\" name=\"pais\" size=\"20\"></p>";
echo "<p>Teléfono: <input type=\"text\" name=\"tlf\" size=\"15\"></p>";
echo "<p>Correo Electrónico: <input type=\"text\" name=\"mail\" size=\"30\"></p>";
echo "<p>Confirme su Correo Electrónico: <input type=\"text\" name=\"mailr\" size=\"30\"></p>";

echo "<p>Mantenemos la confidencialidad de sus datos personales de acuerdo a la <a href=\"privacidad.php\"Ley de Protección de Datos</a>.</p>";

echo "<p><u>He sido informado que NO se admiten animales:</u> <input name=\"animales\" type=\"checkbox\"></p>";
echo "<p>Deseo recibir una copia de este mensaje: <input name=\"copia\" type=\"checkbox\" checked></p>";
echo "<p>Deseo recibir ofertas y promociones: <input name=\"ofertas\" type=\"checkbox\" checked></p>";

echo "<p>Observaciones: <textarea name=\"message\" rows=\"8\" class=\"textarea\"></textarea></p>";

$param="bungalow_type=".$bungalow_type."&begin_dat e=".$begin_date."&end_date=".$end_date."&num_dias= ".$num_dias."&nom_extras=".$nom_extras."&subtotal= ".$subtotal."&total=".$total."&anticipo=".$anticip o."";

echo "<p><input type=\"button\" name=\"button\" value=\"Aceptar Presupuesto\" onclick=\"javascript:get_param(this.parentNode, 'get_presupuesto.php', 'bungalow_fin', '".$param."');\"></p>";

echo "</form>";
*******************************************
pagina a mostrar en el 5º div:
$bungalow_type=$_GET[bungalow_type];
$begin_date=$_GET[begin_date];
$end_date=$_GET[end_date];
$num_dias=$_GET[num_dias];
$nom_extras=$_GET[nom_extras];
$subtotal=$_GET[subtotal];
$total=$_GET[total];
$anticipo=$_GET[anticipo];
//Las variables anteriores se reciben correctamente, pero las siguientes, que provienen del formulario, no las recibo.
$nombre=$_GET[nombre];
$apellidos=$_GET[apellidos];
$direccion=$_GET[direccion];
$localidad=$_GET[localidad];
$codpostal=$_GET[codpostal];
$ciudad=$_GET[ciudad];
$pais=$_GET[pais];
$tlf=$_GET[tlf];
$mail=$_GET[mail];
$mailr=$_GET[mailr];
$animales=$_GET[animales];
$copia=$_GET[copia];
$ofertas=$_GET[ofertas];

echo "bungalow_type: ".$bungalow_type."<br>";
echo "begin_date: ".$begin_date."<br>";
echo "end_date: ".$end_date."<br>";
echo "num_dias: ".$num_dias."<br>";
echo "nom_extras: ".$nom_extras."<br>";
echo "subtotal: ".$subtotal."<br>";
echo "total: ".$total."<br>";
echo "anticipo: ".$anticipo."<br>";
echo "nombre: ".$nombre."<br>";
echo "apellidos: ".$apellidos."<br>";
echo "direccion: ".$direccion."<br>";
echo "localidad: ".$localidad."<br>";
echo "codpostal: ".$codpostal."<br>";
echo "ciudad: ".$ciudad."<br>";
echo "pais: ".$pais."<br>";
echo "tlf: ".$tlf."<br>";
echo "mail: ".$mail."<br>";
echo "mail r: ".$mailr."<br>";
echo "animales: ".$animales."<br>";
echo "copia: ".$copia."<br>";
echo "ofertas: ".$ofertas."<br>";

*******************************************
funcion get_param de ajax:
function get_param(obj,phpscript,div,param) {
theDIV=div;
var getstr = "?";
getstr += param;
getstr += "&";
for (i=0; i<obj.childNodes.length; i++) {
if (obj.childNodes[i].tagName == "SELECT") {
var sel = obj.childNodes[i];
getstr += sel.name + "=" + sel.options[sel.selectedIndex].value;
}
if (obj.childNodes[i].tagName == "INPUT") {
if (obj.childNodes[i].type == "text") {
getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
}
if (obj.childNodes[i].type == "checkbox") {
if (obj.childNodes[i].checked) {
getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
} else {
getstr += obj.childNodes[i].name + "=&";
}
}
if (obj.childNodes[i].type == "radio") {
if (obj.childNodes[i].checked) {
getstr += obj.childNodes[i].name + "=" + obj.childNodes[i].value + "&";
}
}
}
}
makeRequest(phpscript, getstr);
}
*******************************************

A ver si alguien me puede ayudar. Muchas gracias.

Última edición por paquedo; 21/04/2008 a las 08:51