Cita:
Iniciado por charlyta
Hola. ¿Alguien sabe por qué me da error este condicional? nunca me acepta el tercer y cuarto condicional...
Código PHP:
if ($db == "nous"){
$fname="../db/nous.csv";
}elseif ($db == "vells"){
$fname="../db/vells.csv";
}elseif ($db == "novetats"){
$fname="../db/catalegvells.csv";
}else{
$fname="../db/catalegnous.csv";
}
Deberías evitar los if encadenados de esta forma, ya que tú y el que venga detrás, demorarán tiempo para entender cómo funciona y cual es el flujo de la lógica.
Perfectamente puedes hacer varios if si esto clarifica ("menos no es más, es menos"), evita la obsesión de los programadores de hacer todo en una sola línea o sentencia (dejando el primer valor por defecto):
Código PHP:
$fname="../db/catalegnous.csv"
if ($db == "nous"){
$fname="../db/nous.csv";
}
if ($db == "vells"){
$fname="../db/vells.csv";
}
if ($db == "novetats"){
$fname="../db/catalegvells.csv";
}
Pero como bien te han sugerido, la estructura ideal es usar un switch con su último valor por defecto en caso que no coincida con ninguna condición.