Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sfonseca45

Pesquisa por valores com ListMenu

Recommended Posts

Bom Dia a todos ...

Desenvolvi um site para uma imobiliaria e criei uma pesquisa com varios listmenus ...

Lista Imoveis -> casa, apartamento, etc ...

Bairros -> Itapuã, Pituba, etc ...

Nº de Quartos -> 2,3, etc ...

Valor -> até 100 mil, até 150 mil, etc ... AQUI ESTA O PROBLEMA

 

Na pesquisa por valor está acontecendo algo estranho, pelo menos para mim ...

 

Não consigo listar imóveis com valores de até 100.000,00 (existem 2), nos outros valores consulta normal

 

O resultado da pesquisa é valores até XX valor

 

Alguém teria uma idéia do que poderia estar acontecendo?

 

o site esta no ar ... http://www.marlimorelli.com

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui eu resgato as variaveis

<%imv = Request.QueryString("imovel")bairro = Request.QueryString("bairro")quarto = Request.QueryString("quarto")valor = Request.QueryString("valor")vcodigo = Request.QueryString("txtcodigo")%>

Aqui a SQL

 

<%Set rstimoveis = Server.CreateObject("ADODB.Recordset")rstimoveis.ActiveConnection = imob					IF imv <> "Todos" and bairro = "Todos" and quarto = "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE categoria ='"+imv+"'  ORDER BY preco ASC"					Elseif imv <> "Todos" and bairro <> "Todos" and quarto = "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE categoria ='"+imv+"' and bairro = '"+bairro+"' ORDER BY preco ASC"					Elseif imv <> "Todos" and bairro <> "Todos" and quarto <> "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE categoria ='"+imv+"' and bairro = '"+bairro+"' and quarto>='"+quarto+"' ORDER BY preco ASC"					Elseif imv <> "Todos" and bairro <> "Todos" and quarto <> "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE categoria ='"+imv+"' and bairro = '"+bairro+"' and quarto>='"+quarto+"' and preco <='"+valor+"' ORDER BY preco ASC"					Elseif imv = "Todos" and bairro <> "Todos" and quarto = "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE bairro ='"+bairro+"'  ORDER BY preco ASC"					Elseif imv = "Todos" and bairro = "Todos" and quarto <> "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE quarto >='"+quarto+"'  ORDER BY preco ASC"					Elseif imv = "Todos" and bairro = "Todos" and quarto = "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE preco <='"+valor+"' ORDER BY preco DESC"					Elseif imv = "Todos" and bairro <> "Todos" and quarto <> "Todos" and valor = "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis WHERE bairro='"+bairro+"' and quarto >='"+quarto+"' ORDER BY preco ASC"					Elseif imv = "Todos" and bairro <> "Todos" and quarto <> "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE preco <='"+valor+"' and bairro='"+bairro+"' and quarto>='"+quarto+"' ORDER BY preco ASC"					Elseif imv = "Todos" and bairro = "Todos" and quarto <> "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE preco <='"+valor+"' and quarto >='"+quarto+"' ORDER BY preco ASC"					Elseif imv = "Todos" and bairro <> "Todos" and quarto = "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE bairro='"+bairro+"' and preco <='"+valor+"' ORDER BY preco ASC"					Elseif imv <> "Todos" and bairro <> "Todos" and quarto = "Todos" and valor <> "Todos" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE categoria = '"+imv+"' and bairro='"+bairro+"' and preco <='"+valor+"' ORDER BY preco ASC"					Elseif imv = "Todos" and bairro = "Todos" and quarto = "Todos" and valor = "Todos" and vcodigo <> "" then					rstimoveis.Source = "SELECT *  FROM imoveis  WHERE id = " & vcodigo - 30					Else					rstimoveis.Source =	"SELECT *  FROM imoveis ORDER BY preco ASC"					End if%>

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é isso

Valores abaixo de 100.000,00

 

Exemplo:

 

se eu coloco valores até 100.000,00 pela logica teria que me trazer valores até 100 mil visto que o eu coloquei :

preco <= valor

 

porem se eu faço isso não me traz valor nenhum e existem 2 imoveis nesta faixa.

 

O gozado que se eu coloco outro valor - ex. 150.000 - me traz imoveis abaixo de até 150.000, porem os menores de 100 mil não aparecem ...

 

Se tiver um tempinho veja no site ... www.marlimorelli.com

 

Será que estes dois registro estão com problemas no BD ... seria muita coincidencia , não acha?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Problema Resolvido ....

A consulta estava sendo feito como texto e não como numero ....

Foi só acrescentar CLng para converter string em numero:

 

<%imv = Request.QueryString("imovel")bairro = Request.QueryString("bairro")quarto = Request.QueryString("quarto")valor = CLng(Request.QueryString("valor"))vcodigo = Request.QueryString("txtcodigo")%>
Ficou beleza ...

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.