Fala galera, boa tarde. Estou com o seguinte problema: tenho 5 tipos de filtros numa página. Posso usar 1 ou até os 5 ao mesmo tempo. Daí, pra consultar no banco de dados, eu fiz da seguinte maneira: ($data_inicial_filtro <> "" AND $data_final_filtro <> "") ? $filtro_data = "data_ped>='$data_inicial_filtro' AND data_ped<='$data_final_filtro'" : $filtro_data = "";
($valor_final_filtro <> "") ? $filtro_valor = "valor_ped>='$valor_inicial_filtro' AND valor_ped<='$valor_final_filtro'" : $filtro_valor = "";
($tipo_ped <> "") ? $filtro_tipo = "tipo_ped IN($tipo_ped)" : $filtro_tipo = "";
($conta_ped <> "") ? $filtro_conta = "conta_ped IN($conta_ped)" : $filtro_conta = "";
($status_ped <> "") ? $filtro_status = "status_ped IN($status_ped)" : $filtro_status = "";
$todos_filtros = array($filtro_data, $filtro_valor, $filtro_tipo, $filtro_conta, $filtro_status);
$todos_filtros = implode(' AND ',$todos_filtros);
$consulta = mysql_query("SELECT * FROM pedidos_conf WHERE $todos_filtros ORDER BY $classificacao $ordem"); O fato de usuário poder usar 1 ou até os 5 filtros ao mesmo tempo é que gera o problema, pois quando o IMPLODE for adicionar os AND, ele vai adicionar também onde o filtro não for utilizado(ou seja, que contiver o valor ""), pois foi salva um array com o valor "". O que eu gostaria era excluir estas arrays que possuem o valor "". Pessoal, desde já, agradeço. Abraços. PS.: caso alguém saiba como fazer isto de outra maneira, por favor, não hesite em me falar. :D