Jump to content


Photo

Calculo De Frete


  • Faça o login para participar
4 replies to this topic

#1 Léo_alves

Léo_alves

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 22/01/2007, 14:58

me ajudem....
estou montando uma loja virtual em php, e estou tendo uma dificuldade.
uma aplicação em php consegue enviar dados para o site dos correios que retorna o valor do frete a ser cobrado.
gostaria de saber como pegar esse valor retornado dos correios, e jogá-lo em uma variavel, para então fornecer o valor final da compra.

Edição feita por: Léo_alves, 22/01/2007, 15:00.


#2 _Samuca_

_Samuca_

    samuelmachado.com

  • Usuários
  • 1062 posts
  • Sexo:Masculino
  • Localidade:São Bento do Sul - SC

Posted 22/01/2007, 15:04

mostre essa "aplicação" para que possamos ver, e te ajudar ;)
--
Samuel Machado
www.samuelmachado.com

#3 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 22/01/2007, 16:39

Eu prefereria ver a URL que você estrá submetendo aos correios, para ver que tipo de valor ele retorna para ai intão ve o que pode ser feito, pois os correios ando mudando muito ....

#4 Léo_alves

Léo_alves

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 23/01/2007, 13:47

<head>
<title>Untitled Document</title>
</head>

<body>


<?php
if( isset($_GET["action"]) && $_GET["action"] == "Submit" ){
$url="http://www.correios.com.br/encomendas/precos/calculo.cfm?resposta=paginaCorreios&servico=40010&cepOrigem=".$_POST["cepOrigem"]."&cepDestino=".$_POST["cepDestino"]."&peso=".$_POST["pesoKg"]."&MaoPropria=".$_POST["maoPropria"]."&valorDeclarado=".$_POST["valorDeclarado"]."&avisoRecebimento=".$_POST["avisarRecebimento"];
$return = implode("", file($url));
preg_match_all("#<b>(.*?)<\/b>#s", $return, $matches);
$frete = Array(
"cepOrigem"=>$_POST["cepOrigem"],
"cepDestino"=>$_POST["cepDestino"],
"pesoKg"=>$_POST["pesoKg"],
"maoPropria"=>$_POST["maoPropria"],
"valorDeclarado"=>$_POST["valorDeclarado"],
"avisarRecebimento"=>$_POST["avisarRecebimento"],
"totalPagar"=>$matches[1][6],
);

// Para Debug
echo '<h1>Retorno:</h1>';
echo '<pre><div style="font-size: 15px;">';
print end($frete);
echo '</div></pre>';
echo '<br/><hr><br/>';
}
?>

<title>C&aacute;lculo do frete </title>
<style type"text/css">
body {
margin: 0;
padding: 30px 50px;
font: 70% Verdana, Arial, sans-serif;
}
h1 {font-size: 140%;}
form {margin: 30px 50px 0;}
form fieldset {
float: left;
padding: 0 20px 10px;
background: #e5e5e5;
border-style: solid;
border-width: 1px 2px 2px 1px;
border-color: #AAA;
}
form legend {
margin-bottom: 15px;
padding: 5px 10px;
background: #F5F5F5;
border-style: solid;
border-width: 1px 2px 2px 1px;
border-color: #AAA;
font-weight: bold;
}
form p {
float: left;
clear: both;
margin: 0;
}
form label {
float: left;
clear: left;
display: block;
width: 120px;
height: 30px;
margin-right: 5px;
padding-top: 3px;
cursor: pointer;
text-align: right;
color: #C00;
}
</style>
<h1>Cálculo do frete</h1>
<form action="?action=Submit" method="post">
<fieldset>
<legend>Preencha todos os campos</legend>
<p>
<label for="cepOrigem">Cep de Origem: </label>
<input name="cepOrigem" type="text" id="cepOrigem" size="7" />
(nosso CEP: 74303030)
</p>
<p>
<label for="cepDestino">Cep de Destino: </label>
<input name="cepDestino" type="text" id="cepDestino" size="7" />
</p>
<p>
<label for="pesoKg">Peso (Kg) at&eacute;: </label>
<select name="pesoKg" size="1" id="pesoKg">
<option value="0.3" selected>0.300</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
</select>
</p>
<p>
<label for="maoPropria">M&atilde;o Propria:</label>
<select name="maoPropria" size="1" id="maoPropria">
<option value="S">Sim</option>
<option value="N" selected>N&atilde;o</option>
</select>
</p>
<p>
<label for="valorDeclarado">Valor Declarado: R$ </label>
<input name="valorDeclarado" type="text" id="valorDeclarado" size="5" />
</p>
<p>
<label for="avisarRecebimento">Avisar Recebimento: </label>
<select name="avisarRecebimento" size="1" id="avisarRecebimento">
<option value="S">Sim</option>
<option value="N" selected>N&atilde;o</option>
</select>
</p>
<p>&nbsp; </p>
<p>
<input type="submit" id="bt-submit" value="Calcular" />
</p>
</fieldset>
</form>
</body>
</html>


;)

#5 _Samuca_

_Samuca_

    samuelmachado.com

  • Usuários
  • 1062 posts
  • Sexo:Masculino
  • Localidade:São Bento do Sul - SC

Posted 23/01/2007, 19:42

o que vc quer está na variavel $frete['totalPagar'] ou então $matches[1][6] ;)
--
Samuel Machado
www.samuelmachado.com




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq