No entiendo esto:
$region = strip_tags ($_POST['region']);
$lugar = "$region";
if($lugar = $region) {
}
Para que el strip? si $region es un entero?
Para que $lugar = $region //que es lo mismo que $lugar = "$region" (si es un string)
Cuando haces esto if($lugar = $region) estas asignando y no comparando:
if($lugar == $region)
Pero no entiendo, $lugar siempre es igual a $region....
Que pasaria si pongo en el parametro otra region que no esta en los ifs?
Yo haría algo como esto:
Código PHP:
Ver originalfunction transporte($region,$default){
$valores = array(100,100,100,100,900,1100,1300,1500,1700,1900,2100,2300,2700); //arreglo de valores por regiones...
if($region == null || $region < 0 || $region >= sizeof($valores)){ $valor = $default;
}
else{
$valor = $valores[$region-1];
}
$transporte = ; //aca tu formula, ya tienes $valor =)
return $transporte;
}
Entonces lo que hice fue, pasar por parametro dos cosas, la region y un valor default, explicacion:
Ya que como tu deseas una funcion con parametro region, y en tus ifs solo atiendes solo unas opciones, supongo que debe haber un valor por defecto. y ese sería el parametro default, ahora para las regiones que no etiendes, y no quieres atenderlas, simplemente en el parametro region, pone null
Saludos