Consultar Cep
Publicado por Hernando dos Santos Almeida 12/05/2005
[ Hits: 17.016 ]
Digite o cep e retornará o nome da rua, estado e cidade.
Bom para interagir em formulários de cadastro ou algo de tipo.
//arquivo cep.php <?php class BUSCACEP{ // propriedades var $CEP; var $UF; var $LOCALIDADE; var $LOGRADOURO; var $BAIRRO; var $ERRO; // 1 - Cep nao está cadastrado //2 - mudança no layout site correio function post_url_correios(){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.correios.com.br/servicos/cep/cep_cep.cfm"); curl_setopt($ch, CURLOPT_FAILONERROR, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 60); // segundos curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,"CEP=" . $this->CEP); $result=curl_exec ($ch); curl_close ($ch); return $result; } function extract_result( $page_result){ function extract_next_field(&$dados){ $pos = strpos($dados, "<TD style=\"color:202A65\">"); $dados = substr($dados, $pos); $pos = strpos($dados, "</TD>"); $result = substr($dados, 25, $pos - 4); $dados = substr($dados, $pos); return $result; } $dados = $page_result; $pos = strpos( $dados, $this->CEP); if( !($pos > 0) ){ $this->ERRO = 2; return ""; } $dados = substr( $dados, $pos); $pos = strpos($dados, "</tr>"); $dados = substr( $dados,1, $pos); // Pegar Estado $this->UF = extract_next_field($dados); // Pegar Localidade $this->LOCALIDADE = extract_next_field($dados); //Pegar logradouro $this->LOGRADOURO = extract_next_field($dados); //Pegar Bairro $this->BAIRRO = extract_next_field($dados); } //constructor function BUSCACEP( $cep ){ if(!empty($cep) ){ $this->CEP = $cep; $page_result = $this->post_url_correios(); $pos = strpos( $page_result, "não está cadastrado"); if($pos > 0){ $this->ERRO = 1; } else { $this->extract_result( $page_result ); } } } }; ?> //Arquivo consulta_cep.php <? include "cep.php"; $DADOS_CEP = new BUSCACEP($cep); ?> <html> <head> <title></title> <meta name="Description" content=""> <meta name="Keywords" content=""> <meta name="Author" content="Theofilo Brito"> <meta name="Generator" content="AceHTML 4 Pro"> </head> <body> <? if(empty($cep) ){ echo "digite: " .$host . "?cep=15500-000"; } if( $DADOS_CEP->ERRO == 1) { echo "CEP naum cadastrado"; } ?> <table border="1"> <tr> <td>CEP: <? echo $DADOS_CEP->CEP; ?></td> </tr> <tr> <td>UF: <? echo $DADOS_CEP->UF; ?></td> </tr> <tr> <td>Localidade: <? echo $DADOS_CEP->LOCALIDADE; ?></td> </tr> <tr> <td>Logradouro: <? echo $DADOS_CEP->LOGRADOURO; ?></td> </tr> <tr> <td>Bairro: <? echo $DADOS_CEP->BAIRRO; ?></td> </tr> </table> </body> </html>
SISTEMA COMPLETO DE NOTÍCIAS !!!
Função String: Gerador automático de links
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
Mikrotik não mostra bytes nem packtes (1)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código [RESOLVID... (4)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta