Cep ajax republica virtual

Asked

Viewed 171 times

0

Hi I’m trying to fill the automatic zip using the virtual republica site, but I’m not able to put the code to fill in my input with ajax. Someone could help me?

HMTL:

      <tr>
                        <td><input type="text" id="cep" name="cep" id="cep" placeholder="Cep" value="" ></td>
                    </tr>
                    <tr>
                        <td><input type="text" id="rua" name="rua" id="rua" placeholder="Endereço" value="" ></td>
                    </tr>
                    <tr>
                        <td><input type="tel" id="numero" name="numero" id="numero" placeholder="Número" value="" ></td>
                    </tr>
                    <tr>
                        <td><input type="text" id="complemento" name="complemento" id="complemento" placeholder="Complemento" value="" ></td>
                    </tr>
                    <tr>
                        <td><input type="text" id="bairro" name="bairro" placeholder="Bairro" value="" ></td>
                    </tr>
                    <tr>
                        <td><input type="text" id="cidade" name="cidade" placeholder="Cidade" value="" ></td>
                    </tr>
                    <tr>
                        <td>
                            <select id="uf" class="stateselect">
                                <option value="" disabled selected>Estado</option>
                                <option value="Acre">Acre - AC</option>
                                <option value="Alagoas">Alagoas - AL</option>
                                <option value="Amapá">Amapá - AP</option>
                                <option value="Amazonas">Amazonas - AM</option>
                                <option value="Bahia">Bahia - BA</option>
                                <option value="Ceará">Ceará - CE</option>
                                <option value="Distrito Federal">Distrito Federal - DF</option>
                                <option value="Espiríto Santo">Espiríto Santo - ES</option>
                                <option value="Goias">Goiás - GO</option>
                                <option value="Maranhão">Maranhão - MA</option>
                                <option value="Mato Grosso">Mato Grosso - MT</option>
                                <option value="Mato Grosso do Sul">Mato Grosso do Sul - MS</option>
                                <option value="Minas Gerais">Minas Gerais - MG</option>
                                <option value="Pará">Pará - PA</option>
                                <option value="Paraíba">Paraíba - PB</option>
                                <option value="Paraná">Paraná - PR</option>
                                <option value="Pernambuco">Pernambuco - PE</option>
                                <option value="Piauí">Piauí - PI</option>
                                <option value="Rio de Janeiro">Rio de Janeiro - RJ</option>
                                <option value="Rio Grande do Norte">Rio Grande do Norte - RN</option>
                                <option value="Rio Grande do Sul">Rio Grande do Sul - RS</option>
                                <option value="Rondônia">Rondônia - RO</option>
                                <option value="Roraima">Roraima - RR</option>
                                <option value="Santa Catarina">Santa Catarina - SC</option>
                                <option value="São Paulo">São Paulo - SP</option>
                                <option value="Sergipe">Sergipe - SE</option>
                                <option value="Tocantins">Tocantins - TO</option>
                            </select>
                        </td>
                    </tr>

Ajax:

     function Validate(field, value){

if(window.XMLHttpRequest){
    var xmlhttp = new XMLHttpRequest();
} else if(window.ActiveXObject){
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");   
}

var urlget = "php/register.php?field="+field+"&value="+value;
var url = "php/register.php";
var params = "field="+field+"&value="+value;

xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

xmlhttp.onreadystatechange = function(){
    if(xmlhttp.readyState === 1){
        document.getElementById('campo_' +field+ '').innerHTML = '<font color="green">Verificando...</font>';   
    }

    if(xmlhttp.readyState === 4 && xmlhttp.status === 200){
        var resposta = xmlhttp.responseText;
        document.getElementById('campo_'+ field + '').innerHTML = resposta;
    }
};

xmlhttp.send(params);
}

PHP

           <?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;  
?>  
  • I haven’t tested your code, but apparently Voce is doing POST and should use GET

  • Where would that be?

No answers

Browser other questions tagged

You are not signed in. Login or sign up in order to post.