Te me has adelantado!! jejeje Efectivamente, ese es el problema que tengo con el script de Metacortex, está visto que no lo he explicado del todo bien...
Estoy probando el tuyo pero al calcular, la página me muestra lo siguiente...
Código:
Warning: Illegal offset type in /homepages/15/d349390213/htdocs/form/operacion.php on line 22
La linea 22 es en la que calculamos el precio total:
Código PHP:
$precioTotal=($precioCurso[$tipo][$coefiTempora]+$precioAlojamiento[$alojamiento][$coefiTempora])*$semanas;
Te pongo el código tal y como me ha quedado después de tu ayuda...
Código HTML:
<form action="operacion.php" method="post">
curso
<select multiple="multiple" name="field1[]" id="field1" ><option value="basico">Curso Básico</option><option value="intensivo">Curso Intensivo</option></select>
alojamiento
<select multiple="multiple" name="field2[]" id="field2" ><option value="compartido">compartido</option><option value="individual">individual</option><option value="sinalojamiento">sin alojamiento</option></select>
semanas
<input type="text" value="" size="20" name="field3" id="field3" />
temporada
<select multiple="multiple" name="field4[]" id="field4" ><option value="baja">Enero-Junio</option><option value="media">Junio-Octubre</option><option value="alta">Octubre-Diciembre</option></select>
<input class="inputForm3" type="submit" name="enviar" value="calcular" />
<input type="text" value="<?php echo $_GET["resultado"]?>" size="20" name="Total" id="Total" readonly="readonly"/>
</form>
y en el php esto
Código PHP:
<?php
$precioalojamiento=0;
$preciocurso=0;
$total=0;
$curso=$_POST['field1']; //basico
$alojamiento=$_POST['field2']; //compartido
$semanas=$_POST['field3']; //2
$temporada=$_POST['field4']; //baja
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 ;
}
echo calculoPrecios($curso, $alojamiento, $semanas, $temporada);
?>
Sabes a que es debido ese warning??
Empiezo a ver la luz!!!