Vários serviços que funcionam on-line precisam contantemente calcular o valor do frete a ser pago para entregar uma encomenda qualquer, para isso os correios disponibilizam um serviço simples que pode facilitar todo esse trabalho. Funciona assim: você, de alguma forma, direciona o uruário para uma página pré-determinada com os dados da encomenda e lá é calculado o frete e novamente o usuário é redirecionado para uma página que você indicou.
Se você que dar ao ciente a liberdade de calcular o frete da maneira que quiser, para isso pode direcionar ele para a URL http://www.correios.com.br/encomendas/precos/default.cfm. Nesta página basta digitar os dados e enviar o formulário que você é automáticamente informado dos valores.
Mas, e se você quiser mostrar esses dados no seu próprio site? É isso que eu vou mostrar daqui em diante!
Pra começar você precisa dos dados da encomenda:
Essas são as informações mais importantes, mas podem tambémser incluidas outras, como:
Enfim, várias informações podem ser inseridas. Por enquanto vamos trabalhar com os dados básicos da primeira lista:
<?php
// Peso da encomenda / 1,5 Kg
$peso = 1.500;
// CEP de origem da encomenda
$origem = 33935000;
// CEP de destino da encomenda
$destino = 41452000;
// URL para redirecionamento
$redir = “http://www.seusite.com.br/frete/calculofrete.php”;
/*
* Até aqui colocamos os dados da encomenda em variáveis, vamos agora enviar o
* pedido de cálculo, o link é o mesmo mostrado acima, só que agora iremos anexar
* todas as informações junto à URL (como no método GET dos formulários)
*/
$url = ‘http://www.correios.com.br/encomendas/precos/calculo.cfm?’;
$url .= ‘cepOrigem=’ . $origem;
$url .= ‘&cepDestino=’ . $destino;
$url .= ‘&peso=’ . $peso;
$url .= ‘&resposta=’ . $redir;
// Todas as informações já foram anexadas, agora é só direcionar para a página de cálculo
header(“Location: $url”);
?>
Quando esses dados são processados e retornam para a página que você indicou você pode trabalhá-los da forma que quiser, eles estão anexaos à URL e são as seguintes variáveis:
Note que alguns destes dados nós mesmos enviamos, e com excessão de Tarifa e erro, todos estão disponíveis para você modificar e obter mais detalhes para apresentar. O valor final fica em $_GET['Tarifa'], os outros dados podem ser acessados da mesma maneira.
<?php
/*
* Essa aqui seria a página que indiquei para retornar após o cálculo estar completo
* Nela eu vou simplesmente mostrar ao usuário alguns dos resultados
*/
echo “Uma encomenda saindo do CEP ” . $_GET['cepOrigem'] . “;
echo ” em direção ao CEP ” . $_GET['cepDestino'];
echo ” custará R$ ” . $_GET['Tarifa'];
?>
Se você simplesmente quiser ver tudo, talvez para testar, use isso:
<?php
print_r($_GET);
?>
Isso imprimirá na tela tudo que estiver contido nas variáveis GET.
Éh, é isso, já dá pra você criar algo mais elaborado à partir disso. Até mais!
Olá,
Esta faltando calcular volume:
$C=$Comprimento;
$L=$Largura;
$A=$Altura;
$TOTAL=(($C*$L)*$A)/4800;
Se passar de 30 é recusado.
Em certas condições alguém irá necessitar deste complemento.
Esta bom a matéria, mas se não checar este item o sistema fica incompleto.
at+
Gostei demais de saber dessa história de pegar o valor frete direto na ECT! Ah… e vc é praticamente 95% anônimo meu!!! Tirando seu W e escrevendo seu sobrenome em português fica 100%!!! kkkk
Muito bom o artigo, parabéns!
——
Que Coincidência!
Vejam meu nome!
Somos 3 Charás!
husauhsahusauh
como faço para funcionar via PAC? COnseguir via sedex mais pac nao… :’(