Consulta CEP [RESOLVIDO]

1. Consulta CEP [RESOLVIDO]

Silvério Coelho Sepulveda
isilver

(usa CentOS)

Enviado em 19/04/2011 - 08:00h

Olá pessoal, saudações.

Gostaria de saber se tem como fazer uma consulta no site dos correios por CEP.

Estou há dias pesquisando na net, e como não encontrei nada resolví tentar ajuda de vocês.

Desde já obrigado.


  


2. MELHOR RESPOSTA

Estevam Mendes
estevam

(usa Ubuntu)

Enviado em 19/04/2011 - 09:22h

Olá tudo bem, eu utilizo uma busca de CEP só que não é pelo correio é um outro site é uma pesquisa em ajax.

São 2 paginas que voce vai utilizar

validaCep.php

<?

//////////////////////////////////////
// ESTEVAM MENDES
// ESTEVAM@LEVITRON.COM.BR
// 22/03/2010
//////////////////////////////////////

$cep = $_GET['cep'];


function busca_cep($cep)
{

include_once('bibliotecas/HttpClient.class.php');

$resultado = HttpClient::quickGet('http://republicavirtual.com.br/web_cep.php?cep='.$cep.'&formato=query_string');

if(!$resultado){
$resultado = "&resultado=0&resultado_txt=erro+ao+buscar+cep";
}
parse_str($resultado, $retorno);
return $retorno;
}

//Vamos buscar o CEP
$resultado_busca = busca_cep($cep);
switch($resultado_busca['resultado'])
{
case '2': //cidades com cep unico
$texto = "::".str_replace(" ", "+", $resultado_busca['cidade']).":".$resultado_busca['uf'].";";
break;

case '1': //cidades normais
$texto = $resultado_busca['tipo_logradouro']."+".$resultado_busca['logradouro'].":".$resultado_busca['bairro'].":".str_replace(" ", "+", $resultado_busca['cidade']).":".$resultado_busca['uf'].";";
break;
}
print utf8_encode($texto);
?>

e a validaCep.js

function buscarEndereco()
{

id('load').style.display = '';

var cep = id('cep0').value+id('cep1').value;

url = 'validaCep.php?cep='+cep;

req = null;
// Procura por um objeto nativo (Mozilla/Safari)
if (window.XMLHttpRequest)
{
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange1;
req.open("GET",url,true);
req.send(null);
// Procura por uma versão ActiveX (IE)
}
else if (window.ActiveXObject)
{
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req)
{
req.onreadystatechange = processReqChange1;
req.open("GET",url,true);
req.send();
}
}
}


function processReqChange1()
{
// apenas quando o estado for "completado"
if (req.readyState == 4)
{
// apenas se o servidor retornar "OK"
if (req.status ==200)
{
//alert('1');
var string = req.responseText;

if(string == '')
{
alert('Erro ao buscar cep. Por favor preencha o endereço completo.');
id('endereco').focus();
}else{

var expString = string.split(":");

var endereco = expString[0];
var endereco = endereco.replace("+"," ");
id('endereco').value = endereco;

var bairro = expString[1];
id('bairro').value = bairro;

var cidade = expString[2];
var cidade = cidade.replace("+"," ");
id('cidade').value = cidade;

var estado = expString[3];
var estado = estado.replace(";"," ");
id('estado').value = estado;
}
id('load').style.display = 'none';

}
else
{
alert("Houve um problema ao obter os dados:n" + req.statusText);
}
}
}


e no seu input vc coloca assim

<input type="text" name="cep" id="cep" onblur="buscarEndereco();" />

3. Re: Consulta CEP [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 01/05/2011 - 23:11h

Testei e comigo funcionou, digite o cep e ele vai retornar o endereço.

Link: http://clares.wordpress.com/2008/02/10/busca-de-cep-com-ajax/

Arquivo: http://clareslab.com.br/cep/cep.rar

Simplificada:

<?php
/*
* Função de busca de Endereço pelo CEP
* - Desenvolvido Felipe Olivaes para ajaxbox.com.br
* - Utilizando WebService de CEP da republicavirtual.com.br
*/
function busca_cep($cep){
$resultado = @file_get_contents('http://republicavirtual.com.br/web_cep.php?cep='.urlencode($cep).'&formato=query_string');
if(!$resultado){
$resultado = "&resultado=0&resultado_txt=erro+ao+buscar+cep";
}
parse_str($resultado, $retorno);
return $retorno;
}


/*
* Exemplo de utilização
*/

//Vamos buscar o CEP 90020022
$resultado_busca = busca_cep('90020022');

echo "<pre> Array Retornada:
".print_r($resultado_busca, true)."</pre>";

switch($resultado_busca['resultado']){
case '2':
$texto = "
Cidade com logradouro único
<b>Cidade: </b> ".$resultado_busca['cidade']."
<b>UF: </b> ".$resultado_busca['uf']."
";
break;

case '1':
$texto = "
Cidade com logradouro completo
<b>Tipo de Logradouro: </b> ".$resultado_busca['tipo_logradouro']."
<b>Logradouro: </b> ".$resultado_busca['logradouro']."
<b>Bairro: </b> ".$resultado_busca['bairro']."
<b>Cidade: </b> ".$resultado_busca['cidade']."
<b>UF: </b> ".$resultado_busca['uf']."
";
break;

default:
$texto = "Fala ao buscar cep: ".$resultado_busca['resultado'];
break;
}

echo $texto;
?>


4. Resolvido

Silvério Coelho Sepulveda
isilver

(usa CentOS)

Enviado em 02/05/2011 - 08:50h

Olá pessoal, obrigado pela ajuda.

Conseguí fazer a consulta.


5. Re: Consulta CEP [RESOLVIDO]

Sergio Teixeira - Linux User # 499126
Teixeira

(usa Linux Mint)

Enviado em 02/05/2011 - 09:19h

É muito fácil fazer tal busca em
http://www.buscacep.correios.com.br/


6. Re: Consulta CEP [RESOLVIDO]

Alberto Federman Neto.
albfneto

(usa openSUSE)

Enviado em 02/05/2011 - 16:32h

ou entre no site dos correios:

http://www.correios.com.br/

e a direita, emcima, buscar CEP ou endereço.


7. Re: Consulta CEP [RESOLVIDO]

Sergio Teixeira - Linux User # 499126
Teixeira

(usa Linux Mint)

Enviado em 03/05/2011 - 10:12h

O link do albfneto remete exatamente para a página que eu indiquei.
E uma rápida pesquisa no Google apontará esses mesmos resultados.


8. Re: Consulta CEP [RESOLVIDO]

Jansen Felipe
jansenfelipe

(usa Ubuntu)

Enviado em 29/09/2015 - 21:05h


Deixar aqui o link de um post que fiz no PHPGrátis ensinando a utilizar o package cep-gratis pelo composer:
http://phpgratis.org/blog/2015/09/tutorial-como-consultar-cep-no-site-dos-correios/






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts