Problemas ao filtar dois campos do db com valor aproximado

Enviada por Gilberto Böck 
Gilberto Böck
Problemas ao filtar dois campos do db com valor aproximado
24 de February de 2012 às 02:25PM
Estou com um problema que esta sendo um ultimamente um dos piores.
Não estou conseguindo filtar duas tabelas do db com valores aproximados.
O campo 1 contem a latitude e o campo dois a longitude, para isso determino os valores da minimos e maximos de latitude e longitude, mas quando pesquiso no db sempre restorna nulo. Alguem aqui ja venceu essa batalha ou apenas eu que não to me familiarizando? eis meu código:
Como os campos de Latitude e longitude são maiores que o tradicional estipulei um filto via "substr"

$lat_prox = substr($lat, 0, 8);
$log_prox = substr($log, 0, 8);



o que me retorna de $lat = -29.67722872096319 para $lat = -29.6772 o que filtra os numeros finais que embarcam as strings maximas e minimas o mesmo ocorre com o $log

para o db fica assim:
SELECT * FROM mapa_teste WHERE (lat > '&Min_lat' AND lat < '$Max_lat') AND (log > '$Min_log' AND log < '$Max_log')

retorno sempre sem filtro algum...
alguma sujestão?
Marcos Regis
Re: Problemas ao filtar dois campos do db com valor aproximado
24 de February de 2012 às 03:26PM
Qual o tipo do campo lat e log ?

Por que não usa as funções matemáticas próprias para isso?

Veja um exemplo aqui
http://code.google.com/intl/pt-BR/apis/maps/articles/phpsqlsearch.html

Leia o Item
Como encontrar locais próximos com MySQL
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.