May 28
Sistema para Calcular Frete SEDEX e PAC a partir de CEP informado.
CSS, Expressões Regulares, HTML, Internet, Javascript, PHP, Sites Comentar >> Marcelo KorjenioskiEstava precisando calcular o envio de SEDEX para vender alguns produtos no mercado livre e fui procurar no Google se alguem já tinha criado algo para simplificar o calculo para agilizar para o usuário.
Entrei um código no fórum http://forum.prestashopbr.com e fiz alguma alterações para se encaixar no que eu precisava. Estou compartilhando o código.
<?php
if($_POST) {
function frete($cod_servico,$cep_origem,$cep_destino,$peso,$comprimento=0,$altura=0,$largura=0) {
$cep_destino = eregi_replace("([^0-9])","",$cep_destino);
$cep_origem = eregi_replace("([^0-9])","",$cep_origem);
// Crio um objeto para manipular o XML.
$doc = new DomDocument;
// Carrega o arquivo XML com um arquivo DOMDocument
$doc->Load("http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?StrRetorno=xml&nCdServico=" . $cod_servico . "&nVlPeso=" . $peso . "&sCepOrigem=" . $cep_origem . "&sCepDestino=" . $cep_destino . "&nCdFormato=1&nVlComprimento=" . $comprimento . "&nVlAltura=" . $altura . "&nVlLargura=" . $largura);
// Defino o nome do elemento pai (root).
$root = $doc->getElementsByTagName('cServico');
// Defino o nome dos elementos filhos no arquivo XML que eu desejo.
$children = array('Valor','PrazoEntrega');
// Faço um loop para pegar todos os elementos pai (root) encontrados.
$valor = array();
for ($i=0; $i < $root->length; $i++) {
// Pega o valor do atributo do elemento pai (root).
$id = $root->item($i)->getElementsByTagName('Codigo')->item(0)->nodeValue;
if($root->item($i)->getElementsByTagName('Erro')->item(0)->nodeValue > 0) {
echo $root->item($i)->getElementsByTagName('MsgErro')->item(0)->nodeValue;
die;
}
// Busca por elementos filhos (child) definidos no array
foreach ($children as $child) {
$valor[$id][$child] = $root->item($i)->getElementsByTagName($child)->item(0)->nodeValue;
}
}
return $valor;
}
// Código do Serviço que deseja calcular, veja tabela acima:
if ($_POST['cep-destino']) {
//$cod_servico = $_POST['servico'];
$cep_origem = '81010210';// CEP de Origem, em geral o CEP da Loja
$cep_destino = $_REQUEST['cep-destino'];// CEP de Destino, você pode passar esse CEP por GET ou POST vindo de um formulário
$peso = '0.300';// Peso total do pacote em Quilos, caso seja menos de 1Kg, ex.: 300g, coloque 0.300
// COMPRIMENTO: comprimento do volume em centímetros - somente número de 16 a 60
$comprimento = 30;
// ALTURA: altura do volume em centímetros - somente número de 2 a 60
$altura = 15;
// LARGURA: largura do volume em centimetros - somente número de 5 a 60
$largura = 20;
$fretes = frete('41106,40010',$cep_origem,$cep_destino,$peso,$comprimento,$altura,$largura);
foreach ($fretes as $servico => $campos ) {
$valor = str_replace(",", ".", $campos['Valor']);
$valor = $valor + 4.00;
$valor = number_format($valor,2, ',', '');
if($servico == '41106') {
echo " Valor PAC " . $valor . " prazo de entrega {$campos['PrazoEntrega']} dia(s).<br/>";
} elseif ($servico == '40010') {
echo " Valor SEDEX " . $valor . " prazo de entrega {$campos['PrazoEntrega']} dia(s).<br/>";
}
}
}
} else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>">
<html xmlns="<a href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="<a href="http://demo.phaneronsoft.com/img/favicon.ico">http://demo.phaneronsoft.com/img/favicon.ico</a>" rel="shortcut icon" type="image/x-icon" />
<title>Sistema para Calcular Frete SEDEX e PAC a partir de CEP informado. | Phaneronsoft</title>
<script src="<a href="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.3/prototype.js">http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.3/prototype.js</a>" type="text/javascript"></script>
<script type="text/javascript">
function submitForm() {
/*
usa método request() da classe Form da prototype, que serializa os campos
do formulário e submete (por POST como default) para a action especificada no form
*/
function mostrarLoading(){
$('loading').style.display = 'block';
$('value').innerHTML = ' ';
}
$('form-pesquisa-repasse').request({
onLoading:mostrarLoading,
onComplete: function(transport){
/*
se o retorno for diferente de -1, entende-se que não houve problemas, então apaga-se
os campos do formulário usando o método reset() da classe Form
*/
if(transport.responseText !=-1) {
$('loading').style.display = 'none';
$('value').innerHTML = transport.responseText;
} else {
$('form-pesquisa-repasse').reset();
$('loading').style.display = 'none';
$('value').innerHTML = 'Erro ao consultar';
}
}
});
return false;
}
</script>
<style type="text/css">
* {
font-family:"Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:12px;
font-style:normal;
font-variant:normal;
font-weight:normal;
line-height:normal;
}
body {
background:#FFFFFF none repeat scroll 0 0;
height:100%;
margin:0;
margin-top:20px;
width:100%;
}
div#wrapper {
margin:auto;
position:relative;
width:450px;
z-index:0;
}
.select {
text-transform:uppercase;
width:99%;
border:1px solid #B6B6B6;
display:block;
}
.formSearch fieldset {
border:1px solid #CCCCCC;
margin:0;
padding:0 10px;
}
label {
display:block;
/*float:left;*/
margin-right:4px;
padding-bottom:5px !important;
}
legend {
color:#1E398D;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
padding:10px 5px;
}
.button {
background:#F5EED3;
border:1px solid #CCCCCC;
color:#666666;
cursor:pointer;
font-size:12px;
font-weight:bold;
letter-spacing:1px;
margin:10px 0 0;
overflow:visible;
text-transform:uppercase;
width:150px;
}
.formMain .inline {
margin:15px 0 0 !important;
}
.text, .select, .textarea, .password {
border:1px solid #B6B6B6;
display:block;
text-transform:uppercase;
}
fieldset span.nameField {
color:#666666;
text-transform:uppercase;
}
h3 {
border-bottom:1px solid #F58220;
margin:0;
padding:0;
}
h3 span {
-x-system-font:none;
color:#1E398D;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
font-style:normal;
font-variant:normal;
font-weight:bold;
line-height:normal;
}
#value {
-x-system-font:none;
color:#9B0000;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
font-style:normal;
font-variant:normal;
font-weight:bold;
line-height:normal;
}
#rastrear {
padding-top:30px;
}
#loading {
display:none;
color:#9B0000;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
font-style:normal;
font-variant:normal;
font-weight:bold;
line-height:normal;
text-transform:capitalize;
}
</style>
</head>
<body>
<center>
</center>
<div id="wrapper">
<h3>
<span>Pesquisa valor de frete</span>
</h3>
<form id="form-pesquisa-repasse" action="" method="post" onsubmit="submitForm(); return false;" class="formMain formSearch wsizep100">
<fieldset>
<legend>Filtrar Referência</legend>
<label class="wsize010" for="cep-destino">
<span class="nameField">CEP Destino</span>
<input id="cep-destino" class="text" type="text" value="" maxlength="9" title="CPF destino" name="cep-destino" tabindex="2"/>
</label>
<label for="pesquisar" class="wsize010">
<input type="button" onclick="submitForm(); return false;" value="pesquisar" class="button inline"/>
</label>
</fieldset>
</form>
<span>* Digitar somente número no CEP</span>
<br />
<span id="value"></span>
<span id='loading'>Pesquisando...</span>
</div>
</body>
</html>
<?php
} // fim else
?>
Caso tenha alguma duvida deixe um comentário que terei prazer em ajudar.
Comentários são bem vindos assim posso melhorar a qualidade dos tutoriais aqui apresentados.
<?php
//script original pego em http://forum.prestashopbr.com/viewtopic.php?f=9&t=322&start=30
#####################################
# Código dos Serviços dos Correios #
# FRETE PAC = 41106 #
# FRETE SEDEX = 40010 #
# FRETE SEDEX 10 = 40215 #
# FRETE SEDEX HOJE = 40290 #
# FRETE E-SEDEX = 81019 #
# FRETE MALOTE = 44105 #
# FRETE NORMAL = 41017 #
# SEDEX A COBRAR = 40045 #
#####################################
if($_POST) {
// Código do Serviço que deseja calcular, veja tabela acima:
if ($_POST['servico']) {
$cod_servico = $_POST['servico'];
}
// CEP de Origem, em geral o CEP da Loja
$cep_origem = '81010210';
// CEP de Destino, você pode passar esse CEP por GET ou POST vindo de um formulário
$cep_destino = $_POST['cep-destino'];
$cep_destino = eregi_replace("([^0-9])","",$cep_destino);
// Peso total do pacote em Quilos, caso seja menos de 1Kg, ex.: 300g, coloque 0.300
$peso = '0.300';
// URL de Consulta dos Correios
$correios = "http://www.correios.com.br/encomendas/precos/calculo.cfm?servico=".$cod_servico."&cepOrigem=".$cep_origem."&cepDestino=".$cep_destino."&peso=".$peso."&MaoPropria=N&avisoRecebimento=N&resposta=xml";
// Capta as informações da página dos Correios
$correios_info = file($correios);
// Processa as informações vindas do site dos correios em um Array
foreach($correios_info as $info){
// Busca a informação do Preço da Postagem
if(preg_match("/\<preco_postal>(.*)\<\/preco_postal>/",$info,$tarifa)){
$embalagem = 4.00; // Aqui você pode colocar o valor da embalagem para envio do produto
$total = $tarifa[1] + $embalagem;
}
}
// Neste exemplo estou colocando apenas PAC e SEDEX
switch ($cod_servico) {
case 41106:
$nome_servico = "Valor do frete via PAC ";
break;
case 40010:
$nome_servico = "Valor do frete via SEDEX ";
break;
}
// Caso venha valor de resposta é numerio e maior que o custo da embalagem senão ocorreu algum erro na solicitação.
if(is_numeric($total) && ($total > $embalagem)) {
// Quando encontra o valor da postagem, exibe na página formatando em padrão de moeda 10,89
// Caso você não queira formatar basta comentar a linha abaixo que será exibido assim 10.89 e basta executar o comando abaixo
$total = number_format($total,2,',','.');
echo $nome_servico . $total;
} else {
echo 'Erro ao consultar verifique se CEP esta correto';
}
} else {
?>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.0.3/prototype.js" type="text/javascript"></script>
<script type="text/javascript">
function submitForm(form) {
/*
usa método request() da classe Form da prototype, que serializa os campos
do formulário e submete (por POST como default) para a action especificada no form
*/
form.request({
onComplete: function(transport){
/*
se o retorno for diferente de -1, entende-se que não houve problemas, então apaga-se
os campos do formulário usando o método reset() da classe Form
*/
if(transport.responseText !=-1) {
$('value').innerHTML = transport.responseText;
} else {
form.reset();
$('value').innerHTML = 'Erro ao consultar';
}
}
});
return false;
}
</script>
<style type="text/css">
* {
font-family:"Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:12px;
font-style:normal;
font-variant:normal;
font-weight:normal;
line-height:normal;
}
body {
background:#FFFFFF none repeat scroll 0 0;
height:100%;
margin:0;
margin-top:20px;
width:100%;
}
div#wrapper {
margin:auto;
position:relative;
width:450px;
z-index:0;
}
.formMain .select {
text-transform:uppercase;
width:99%;
border:1px solid #B6B6B6;
display:block;
}
.formSearch fieldset {
border:1px solid #CCCCCC;
margin:0;
padding:0 10px;
}
.formMain label {
display:block;
float:left;
margin-right:4px;
padding-bottom:5px !important;
}
.formMain legend {
color:#1E398D;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
padding:10px 5px;
}
.formMain .button {
background:#F5EED3;
border:1px solid #CCCCCC;
color:#666666;
cursor:pointer;
font-size:12px;
font-weight:bold;
letter-spacing:1px;
margin:10px 0 0;
overflow:visible;
text-transform:uppercase;
width:100%;
}
.formMain .inline {
margin:15px 0 0 !important;
}
.formMain .text, .formMain .select, .formMain .textarea, .formMain .password {
border:1px solid #B6B6B6;
display:block;
text-transform:uppercase;
}
.formMain fieldset span.nameField {
color:#666666;
text-transform:uppercase;
}
h3 {
border-bottom:1px solid #F58220;
margin:0;
padding:0;
}
h3 span {
-x-system-font:none;
color:#1E398D;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
font-style:normal;
font-variant:normal;
font-weight:bold;
line-height:normal;
}
#value {
-x-system-font:none;
color:#9B0000;
font-family:"Legacy Sans ITC TT Bold","Trebuchet MS","Lucida Grande",Verdana,Tahoma,Helvetica,Arial,sans-serif;
font-size:1.5em;
font-style:normal;
font-variant:normal;
font-weight:bold;
line-height:normal;
}
</style>
</head>
<body>
<div id="wrapper">
<h3>
<span>Pesquisa valor de frete</span>
</h3>
<form id="form-pesquisa-repasse" action="" method="post" onsubmit="submitForm(this); return false;">
<fieldset>
<legend>Filtrar Referência</legend>
<label for="servico">
<span>Envio</span>
<select id="servico" name="servico" title="Serviços dos Correios" tabindex="1">
<option value="41106">PAC</option>
<option value="40010">SEDEX</option>
</select>
</label>
<label for="cep-destino">
<span>CEP Destino</span>
<input id="cep-destino" type="text" value="" maxlength="9" title="CPF destino" name="cep-destino" tabindex="2"/>
</label>
<label for="pesquisar">
<input type="submit" id="pesquisar" name="pesquisar" tabindex="3" value="Pesquisar" />
</label>
</fieldset>
</form>
<span>* Digitar somente número no CEP</span>
<br />
<span id="value"></span>
</div>
</body>
</html>
<?php
} // fim else
?>

olá,
promeiramente obrigada pela dica do calculo de frete, vc poderia me dizer se tem q instalar algo adicional para q este script funcione? copiei o codigo e colei, salvei como correio.php, publiquei na locaweb mas quando clico em calcular a página fica em branco.
abraços
Olá Cristiane,
Não é necessário instalar nada.
O pluggin do WordPress fez uma bagunça no código.
Já corrigi e testei. Qualquer duvida me procure. Irei testar os códigos que são postados para que este tipo de problema não ocorra.
ola como faço pra colocar esse calculo de cep no mercado livre?? obrigada.
Olá Palloma.
Basta hospedar este código em um servidor que suporte PHP e colocar link desta página na descrição do produto.
Este servidor é gratuito http://www.phpnet.us/ com ele já é possivel testar o código basta fazer o cadastro.
Segue o link direto para cadastro.
http://www.phpnet.us/signup.php
Na Locaweb já possui um script pronto para calcular frete pelos correios. Muito mais simples para quem ja utiliza a locaweb. Basta procurar na locaweb como utilizar.
Muito fáácil!
Valewww
*Não desmerecendo o código do amigo aqui.
Só para faciliar msm para quem utiliza a locaweb! =]
Obrigado por compartilhar a informação Rafael.
A Locaweb sempre tem ótimas soluções para seus clientes.
Segue o wiki com a solução.
http://wiki.locaweb.com.br/pt-br/C%C3%A1lculo_de_Frete
Boa tarde Rafael, esse codigo é muito bom, mais tenho uma duvida, no caso de frete via PAC, eu tenho de informar as dimensões, Largura, Comprimento e Altura. Onde se encontra esses campos no codigo? Muito obrigado.
Olá Fabio.
Não tem como setar as dimensões do PAC pelo menos não mostra no link do correio.
Acesse http://www.correios.com.br/encomendas/precos/calculo.cfm
Abra o fonte desta pagina e veja que tem um javascript que abre um pop e nele tem todos os parametros. Se encontrar algo post aqui por favor.
Olhando no fonte do javascript da pagina para
calcular frete vi que a parte de dimensões do pacote PAC só não pode ultrapassar alguns valores que estão neste link
Aqui esta o código de validação. Procure pela função validarCaixa.
Para facilitar a vida eu adicionei uma ER para deixar somente numero na entrada do CEP destino.
Tem como eu usar esse código no Word Press, junto com o sistema de e-commerce?
Obrigado!
É possível usar o código acredito que com pequenas mudanças vc irá conseguir integrar com o sistema já que este código é simples e não depende de nenhuma biblioteca.
Lançada uma nova versão.
July 22nd, 2009 at 9:45 am
[…] um exemplo aqui no site sobre Sistema para Calcular Frete SEDEX e PAC a partir de CEP informado eu faço o uso do prototype para resgatar os dados via […]
Oi amigo, achei muito interessante você passar esse script, vou testalo ainda no servidor. O problema é que fui abrir e testar link de exemplo e deu erro. Espero que o problema seja aqui, rs. Mais tudo bem, espero ler mais artigos seu com PHP, abraços!!!!
Não é erro com seu servidor não… eu postei o código em versão HTML e foi convertido os && (and) para & obrigado pela ajuda Diogo.
valeu, to vendo agora está tudo perfeito. Sua demonstração está funcionando e testei aqui em localhost está perfeito. Eu queria colocar um campo com a opção de Quantidades de produto. Vou tentar aqui, obrigado e abraços.
Amigo, reparou q o eSedex retorna como código de serviço inválido?
Obrigado.
Vi que no site do correio não esta mais retornando valor para este tipo de serviço. Mas o código é esta.
Percebi também que somente o PAC e SEDEX estão funcionando. Assim que tiver um tempo vou tentar corrigir este problema. Se alguém encontrar uma solução favor postar aqui.
Muito obrigado cara, usei seu script pra colocar neste site aqui http://www.flaroots.com.br na galeria de eventos tem um link comprar foto e lá eu coloquei o script calcular frete. Obrigado!
October 14th, 2009 at 5:13 pm
[…] Como não gosto de ficar apertando F5 no site dos correios que vive com problemas resolvi fazer a consulta via Ajax. O codigo é simples e aproveitei a ideia do sistema para calcular frete. […]
Olá Marcelo tudo bem?
Gostaria que você me ajudasse a colocar na minha primeira pagina de meu blog/site
Tres banners tipo calcule seu frete aqui
sendo 1 para cada ítem,
ao entrar no meu blog/site verá que já fiz váris tentativas e não consegui por não entender nada de sites.
Pode me ajudar?
Abraços
Dr Dog — Silvio
Olá Dr Dog.
Se seu Blog for no WordPress vc pode acidionar o código criando um Widgets de campo personalizado assim basta colar o código neste campo.
O MERCADO LIVRE É UMA PORCARIA MESMO, NEM UM CALCULADOR DE FRETE OFERECE PARA OS USUÁRIOS.
Seria bom um calculador de frete no ML ajudaria muita gente.
Olá amigo! temo como arrumar este código já corigido para quen eu coloque em meu site? http://comerciobr.com.br
Ou se alguem tem outro melhor e mais prático. Estou aceitando ajuda.
Obrigado
February 8th, 2010 at 12:38 pm
[…] Sistema para Calcular Frete 1.1 […]
Não testei o script, mas eu uso um similar e não está mais funcionando o calculo do PAC. Parece que os correios removeu o PAC desse calculo. Já tentei passar as variaveis que agora sao obrigatorias para calcular o pac: o formato, comprimento, largura, altura, mas nada. Se alguem souber de algo, da um toque, farei o mesmo. valeu.
Ocorreu uma mudança sim neste post vc vai encontrar a nova documentação e uma exemplo do PAC funcionando.
Muito obrigado camarada. Deu certo!
Cara perfeito! Tudo que eu estava precisando. É dificil encontrar quem compartilha informação assim. Obrigado!
Olá o calculo do frete sempre arredonda tipo se no site dos correios eu calculo dá 17,20 no desse codigo dá 17,00 como corrigir isso
Fiz uma alteração no código. O problema estava que nos correios o valor vem com virgula e estava colocando o custo adicional com ponto.
Obrigado pelo aviso.
Marcelo excelente calculador de frete, mas estou com um problema na linha 11
$doc->Load(“<a href=“http://shopping.correios.com.br/
Logo depois do // o editor acha que é comentario pq?
Já foi corrigido o link por favor faca um teste.
Cara valeu mesmo, nem testei em meus códigos, mas se funciona eu me viro aqui, aparentemente vc salvou minha pele pq meus sites pararam de calcular os fretes por causa de alguma mudança :/
valeu!
da um erro;
Input string was not in a correct format.
oq ue faço
Marcelo, perfeito seu código. Depois de muito procurar pela net, juro pra você que o seu foi o unico codigo que deu certo. Vlw!
Olá. Gostaria de saber o que está causando o erro no site https://mixcolorinformatica.websiteseguro.com/frete_pac.php .
Inserí o novo código, atualizado por você, porém não exibe os valores nem o prazo.
Obrigado.
Olá.
Testei o código no site http://www.mixcolorinformatica.com.br/frete_pac e não está funcionando. O código é exatamente igual ao que você postou, o que pode estar ocorrendo ? Existe alguma diretiva que tem que ser ativada para o script funcionar ?
Att
Olá.
Testei o último código postado para cálculo do PAC, mas o mesmo não funciona no site: http://www.mixcolorinformatica.com.br/frete_pac.php
Precisa ativar alguma diretiva para funcionar o script ?
Att.
Olá Marcelo,
Gostaria de saber como eu faço para calcular o frete quando há mais de um item no carrinho? Tipo somos todas as medidas e calculo como uma só? Porque nos correios existe um limite onde o comprimento+largura+altura nao pode ultrapassar 150 cm? Você já desenvolvou algo nesse sentido?
Ainda não tenho pronto nada pronto Débora mas já senti a necessidade igual a você. O calculo para efetuar este tipo de informação é complexo já que teremos diferentes tamanhos de embalagens então para facilitar o calculo se fizer um algoritimo que se baseia em quantos itens cabem na embalagem em que eles irão ser enviado fica mais facil. Irei fazer minha monografia criando um sistema para fazer este tipo de calculo quando terminar irei disponibilizar aqui no blog.
Obrigado.
Olá Marcelo… estou com o seguinte erro que apareceu do nada… e não fiz alteração nenhuma no código.
Warning: DOMDocument::load() [domdocument.load]: URL file-access is disabled in the server configuration in /home/rodrigo/public_html/frete.php on line 11
Warning: DOMDocument::load(http://shopping.correios.com.br/wbm/shopping/script/CalcPrecoPrazo.aspx?StrRetorno=xml&nCdServico=41106,40010&nVlPeso=1&sCepOrigem=03633000&sCepDestino=01000000&nCdFormato=1&nVlComprimento=16&nVlAltura=2&nVlLargura=11) [domdocument.load]: failed to open stream: no suitable wrapper could be found in /home/rodrigo/public_html/frete.php on line 11
Warning: DOMDocument::load() [domdocument.load]: I/O warning : failed to load external entity “http://shopping.correios.com.br/wbm/shopping/script/CalcPrecoPrazo.aspx?StrRetorno=xml&nCdServico=41106,40010&nVlPeso=1&sCepOrigem=03633000&sCepDestino=01000000&nCdFormato=1&nVlComprimento=16&nVlAltura=2&nVlLargura=11″ in /home/rodrigo/public_html/frete.php on line 11
Isso é problema de conexão com os correios. Tenho que arrumar o codigo para tratar exceção.
Olá Marcelo, tive um problema parecido tb ao implementar. Aparece a seguinte mensagem de erro: Message: DOMDocument::load() [domdocument.load]: URL file-access is disabled in the server configuration
Filename: frete/consultafrete_helper.php
O site estar hospedados na Insite.
Olá marcelo esse calculo do frete esta muito bom, só que estou com o mesmo problema do rapaz que fez a pergunda de numero 44. problema na conexao com os correios, na parte que o frete fica separado no meu site tive que colocar um outro codigo que so funciona o sedex, eu mas no carrinho de compra to usando esse e quando tava funcionando tava uma maravilha pode me ajudar a consertar esse erro ? obrigado.
Cara, boa tarda, novamente esta dando erro na url do correios, testa novamente para vc ver o resuldado…
O que podemos fazer para arrumar isso?
Bom Galera, Verifiquei na net sobre a url dos correios,(“Pois tive alguns problemas com clientes”), e desde 02/08 que foi mudada, bom no arquivo acima que utilizo tb. em meus e-commerce mudei a url antiga para esta:
http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?
aki no meu site deu certo, qualquer coisa estamos ae, se alguem saber outra forma, comenta ai, vamos compartilhar conhecimentos.
abs..
O serviço esta fora desde ontem você conseguiu fazer o serviço funcionar Carlos?
Pois é os correios não tem uma boa ideia sobre o que é um webservice. Eles vivem mudando os parametros com muita frequencia. Isso dificulta muito o trabalho. Espero que um dia consigam estabilizar o serviço.
não consigo fazer funcionar.. so dá esse erro: Input string was not in a correct format.
tenho tbm alguns anuncios no mercado livre, mas como posso fazer agradeco se puder me ajudar , sei q o ML trabalha em html mas ‚nao sei por onde comeco para colocar 1 calculador no meu anuncio,
grato! meu email> estudiobase@hotmail.com
Ola tbem tenho anuncio no mercado livre e nao sei aonde acho o calculo de frete e como faço pra colocar passo a passo no anuncio do mercado livre eluis3451@hotmail.com obrigado aguardo resposta