Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/11/2016, 14:18
emeotero
 
Fecha de Ingreso: mayo-2011
Ubicación: Santiago de Compostela
Mensajes: 126
Antigüedad: 13 años
Puntos: 0
Consulta condicional

Hola, en realidad no se si llamarla así o recibe otro nombre... Sigo aprendiendo, avanzo despacio... pero bueno... La pregunta que quería hacer es: quiero ejecutar una consulta desde un formulario donde no siempre vendrán todos los campos, puede venir uno, tres, todos... Según lo tengo, de momento necesito tener el primero después de WHERE para que me funcione la consulta, los siguientes valores de la consulta vienen con AND, ahí me encuentro el problema, si no tengo el primero, el siguiente en el echo de la query me da error porque pone WHERE AND ...
La consulta es:
Código PHP:
$query "Select id, idcountry, idspecie, idstage, name, 
        description, weather, date,
        idseason, season, idschool, name
        FROM base.vw_observa where "
;
        
if(
$_POST["country"] != ""){
    
$query .= " idcountry = '$pais'";
}
if(
$_POST["school"] != ""){
    
$query .= " and idschool ='$colegio'";
}
if(
$_POST["specie"] != ""){
    
$query .= " and idspecie = '$especie'";
}
if(
$_POST["fenomeno"] != ""){
    
$query .= " and idstage = '$fenomeno'";
}
if(
$_POST["crono"] != ""){
    
$query .= " and idseason = '$estacion'";
}

$query .= ' ORDER BY idspecie'
He probado varías cosas, pero no acierto.
Agradecería alguna pista/ayudita. Saludos.