Ir para conteúdo

POWERED BY:

Arquivado

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

CDog-BR

Localização por CEP

Recommended Posts

Ola a todos.

 

Estou encontrando dificuldades para criar uma pesquisa. è assim tenho uma banco de dados com todas as lojas que distribuem o produto, e preciso que o suposto cliente localize a loja mais proxima digitando o seu proprio CEP.

Alguém tem uma dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

vocÇe precisa do bd dos CEP´s, no fórum existem tópicos com o link para download e também fica legal se você utilizar AJAX ou um jquery, para que conforme o user for digitando , ele mesmo vai fazendo a busca , atraves do evento OnKeyPress

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamo lá!!

 

A explicação do xanburzum tá correta.

 

Agora falando sobre a lógica do CEP:

 

O Cep é composto por 8 dígitos e cada dígito tem um significado.

 

estrutura_1.gif

 

Ou seja, seguindo o raciocínio da imagem acima, você pode fazer uma busca com os primeiros dígitos do CEP do clinte comparados aos 5 primeitos digitos dos CEPs que você possui das lojas.

 

Caso não retorne uma loja, aí você compara os 4 primeiros digitos, depois os 3, depois os 2 até chegar no 1º digito. Em algum momento tem que aparecer a loja com a estrutura de cep mais parecida com a do Cliente.

 

Obs.: A estrutura de CEP do Brasil em alguns lugares (poucos) está bagunçada... ou seja... essa solução funciona, mas pode falhar em algum caso específico.

 

Bom, é isso... se tiverem alguma outra solução, tamo ae!

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo, uma Função de busca de Endereço pelo CEP

 

 

<%    
 '  -   Desenvolvido Felipe Olivaes para ajaxbox.com.br    
 '  -   Adaptação de exemplo para utilização com ASP por Otávio Nogueira   
 '  -   Utilizando WebService de CEP da republicavirtual.com.br    
 '   
function busca_cep( cep )   

   url = "http://republicavirtual.com.br/web_cep.php?cep="& cep &"&formato=query_string"  

   set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")    
   xmlhttp.open "GET", url, false    
   xmlhttp.send ""  

   xmlhttp_resultado = xmlhttp.responseText    
   set xmlhttp = nothing    

   arr_resultado = split( xmlhttp_resultado, "&" )   

   dim resultado(7)   
   for i = lbound( arr_resultado ) to ubound( arr_resultado )   

       resultado( i ) = arr_resultado( i )   

   next   

   arr = split( join( resultado, "=" ), "=" )   

   dim arr_2(14)   
   for i = lbound( arr ) to ubound( arr )   

       arr_2( i ) = replace( arr( i ), "+", " " )   

   next       

   busca_cep = arr_2   
end function   

'    
' Exemplo de utilização     
'     

'Vamos buscar o CEP 90020022     
resultado = busca_cep( "29108048" )   

select case resultado( 2 )   

   case "2"  
   texto = " "&_   
        "<br>Cidade com logradouro único" &_    
        "<br><b>Cidade: </b> "&resultado( 8 ) &" "&_   
        "<br><b>UF: </b> "&resultado( 5 )   


   case "1"  
   texto = " "&_   
        "<br>Cidade com logradouro completo "&_   
        "<br><b>Tipo de Logradouro: </b> "&resultado( 12 ) &" "&_   
        "<br><b>Logradouro: </b> "&resultado( 14 ) &" "&_   
        "<br><b>Bairro: </b> "&resultado( 10 ) &" "&_    
        "<br><b>Cidade: </b> "&resultado( 8 ) &" "&_   
        "<br><b>UF: </b> "&resultado( 6 )   

   case else   

   texto = "Falha ao buscar cep: "& resultado( 4 )   
end select   

response.write texto   
%>

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.