Código PHP:
header("Location: formB.html?resultado=$precioTotal");
/* este el script para el envio del mail*/
$mail='[email protected]';
////ESTO ADEMÁS ESTÁ MAL ///
/*
$precioTotal=($precioCurso[$tipo][$coefiTempora]+$precioAlojamiento[$alojamiento][$coefiTempora])*$semanas;*/
//Tendría que ser
$precioTotal=calculoPrecios($curso, $alojamiento, $semanas, $temporada);
//Y tendría que ir antes de header("Location.....
Mira en eso de arriba, en principio ya estás tomando el valor de la variable
$precioTotal antes de calcularlo.
Otra cosa, tienes que decirle al script como diferenciar lo que tiene que hacer según la info que recoja:
CAMBIA:
Código HTML:
Ver original<td><input class="inputForm3" name="enviar" type="submit" value="Calcula el precio de tu curso" /></td>
POR
Código HTML:
Ver original<td><input class="inputForm3" name="calcula" type="submit" value="Calcula el precio de tu curso" /></td>
También tienes que volver a enviar todas las variables para que pueda tomarlas en la segunda vez que envías con el botón "Reservar".
A mi entender tendría que ser (todo el php):
Código PHP:
Ver original<?php
/*el script para el calculo*/
$precioalojamiento=0;
$preciocurso=0;
$total=0;
$curso=$_POST['curso'];
$alojamiento=$_POST['alojamiento'];
$semanas=$_POST['semanas'];
$temporada=$_POST['temporada'];
function calculoPrecios($tipo, $alojamiento, $semanas, $temporada){
$precioCurso = array('basico' => array('130' , '320' , '510'), 'intensivo' => array('190' , '470' , '695')); $precioAlojamiento = array('compartido' => array('100' , '300' , '450'), 'individual' => array('210' , '370' , '580'));
$coefiTempora = 2;
if($temporada == "baja")
$coefiTempora = 0;
if($temporada == "media")
$coefiTempora = 1;
$precioTotal=($precioCurso[$tipo][$coefiTempora]+$precioAlojamiento[$alojamiento][$coefiTempora])*$semanas;
return $precioTotal ;
}
/*supuestamente esto es para mostrar el calculo en el campo de texto que he preparado para ello*/
$precioTotal=calculoPrecios($curso, $alojamiento, $semanas, $temporada);
$calcular = $_POST['calcula'];
if($calcular){
header("Location: formB.html?resultado=$precioTotal&alojamiento=$alojamiento&semanas=$semanas&temporada=$temporada&curso=$curso&accion=calculado"); }
else
{
/* este el script para el envio del mail*/
$nombre = $_POST['nombre'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];
$thank="gracias.html";
$message = "
nombre:".$nombre."
telefono:".$telefono."
email:".$email."
curso:".$curso."
alojamiento:".$alojamiento."
semanas:".$semanas."
temporada:".$temporada."
precio:".$precioTotal."
mensaje:".$mensaje."
";
if (mail($mail,"Mail recibido",$message))
}
?>
Te he retocado un poco el html, aunque no todo, tienes que ajustarlo.
Código HTML:
Ver original<table width="50%" border="0">
<form action="formB.php" method="post"> <td><input id="nombre" class="inputForm" name="nombre" type="text" /></td> <td><input id="telefono" class="inputForm" name="telefono" type="text" /> </td> <td><input id="email" class="inputForm" name="email" type="text" /> </td>
<?php
if($_GET['accion']){
echo '<td>'.$_GET['curso'].'
</td>';
}
else{
echo '
<td><select id="field1" name="curso"><option>Elige tipo de curso
</option> <option value="basico">Curso Básico (20 clases, por semana, de 45 minutos cada una)
</option> <option value="intensivo">Curso Intensivo (30 clases, por semana, de 45 minutos cada una)
</option> </select></td>';
}
?>
<?php
if($_GET['accion']){
echo '<td>'.$_GET['alojamiento'].'
</td>';
}
else{
echo '
<td><select id="field2" name="alojamiento"><option>Elige tipo de alojamiento
</option> <option value="compartido">Compartido (Habitación compartida de 2 ó 3 personas)
</option> <option value="individual">Individual (Habitación individual)
</option> <option value="sinalojamiento">Sin alojamiento
</option> </select></td>';
}
?>
<td><input id="field3" class="semanas" name="semanas" size="20" type="text" /></td> <td><select id="field4" name="temporada"> <option>Elige la fecha de llegada
</option> <option value="baja">Temporada baja (Del 01/01/2011 al 31/05/2011)
</option> <option value="media">Temporada Media (Del 01/09/2011 al 31/12/2011)
</option> <option value="alta">Temporada Alta (Del 01/06/2011 al 30/08/2011)
</option> </select></td> <td><input class="inputForm3" name="calcula" type="submit" value="Calcula el precio de tu curso" /></td>
<td><input type="text" value="<?php echo $_GET["resultado"]?>" size="20" name="Total" id="Total" readonly="readonly"/>
</td> <td><input class="inputForm3" name="enviar" type="submit" value="Enviar reserva" /></td>
No lo he probado, así que es muy fácil que tengas que hacer algunos retoques.
Saludos