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:
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
Pergunta
Bruno Aguiar
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
Editado por Bruno AguiarLink para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.