hola
1) quite la duplecidad del query
2) puse los parentesis pero presenta error
Parse error: syntax error, unexpected '{', expecting '(' in C:\AppServ\www\sitio\ver_filtro.php on line 55
...asi q sin parentesis
3)sobre la cosnulta sql el AND es para unir la interseccion de sql1,sql2 y sql3 y obtener los valores que coiciden con la condicion
ahora el codigo esta asi
Código PHP:
$sql=mysql_query("select * from filtros where nom= x and id= y;");
while ($row = mysql_fetch_array($sql) ){
if (campo == fase) $sql1 .= "fase = ".$row[valor]." OR ";
if (campo == sitio) $sql2 .= "sitio = ".$row[valor]." OR ";
if (campo == zona) $sql3 .= "zona = ".$row[valor]." OR ";
}
$sql1 = substr($sql1, 0, strlen($sql1)-3);
$SQL = mysql_query("SELECT * FROM ab WHERE ($sql1) AND ($sql2) AND ($sql3); ");
while ($tmp = mysql_fetch_array($SQL)){
?>
<td><? echo $tmp['cod_sitio'] ;?></td>
<td><? echo $tmp['nombre'] ;?></td>
<td><? echo $tmp['ubicacion'] ;?></td>
<td><? echo $tmp['region'] ;?></td>
<?}?>
y este es el error
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
saludos