Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoa tudo beleza
Estou criando um ecommerce porém estou com uma dúvida de como posso calcular o frete altura largura e comprimento de vários produtos no carrinho fiz a comparação do site dos correios e está dando diferença mínima de 4 reais alguém pode me ajudar ?
Williams Duarte
Obrigado por ajudar ...
Testei o seu código aqui e está dando algo diferente do meu .... Vou postar o meu aqui
$CartTotal = 0;//Total
$HeightTotal = 0;//Altura
$WidthTotal = 0;//Largura
$DepthTotal = 0;//Profundidade
$WeightTotal = 0;//Peso
$AmountTotal = 0;
$calc = 0;
$total = 0;
foreach ($_SESSION['wc_order'] as $key => itemAmount):
$CartTotal += ($pdt_offer_price && $pdt_offer_start <= date('Y-m-d H:i:s') && $pdt_offer_end >= date('Y-m-d H:i:s') ? $pdt_offer_price : $pdt_price) * $ItemAmount;
$HeightTotal += $pdt_dimension_heigth * $ItemAmount;//Pega a quandidade de produtos
$WidthTotal += $pdt_dimension_width * $ItemAmount;//Pega a Largura configurada
$DepthTotal += $pdt_dimension_depth * $ItemAmount;//Pega Profundidade
$WeightTotal += $pdt_dimension_weight * $ItemAmount; //Pega Altura
$AmountTotal += $ItemAmount;
endif;
endforeach;
$jSON['H'] = $HeightTotal;
$CartTotalShip = number_format($CartTotal, '2', ',', '');
$WeightTotalShip = floatval($AmountTotal/10);//Peso
$HeightTotalShip = ($HeightTotal >= 2 ? $HeightTotal : 2);
// SE FOR MAIOR ENTÃO RECEBE 2
$WidthTotalShip = ($WidthTotal / $AmountTotal >= 11 ? $WidthTotal / $AmountTotal : 11);
// SE FOR MAIOR ENTÃO RECEBE 11
$DepthTotalShip = ($DepthTotal / $AmountTotal >= 16 ? $DepthTotal / $AmountTotal : 16);
// SE FOR MAIOR ENTÃO RECEBE 16
$data['nCdEmpresa'] ='';
$data['sDsSenha'] = '';
$data['sCepOrigem'] = "09973220";
$data['sCepDestino'] = str_replace('-', '', $POST['zipcode']);
$data['nVlPeso'] = $WeightTotalShip;
Tem que calcular a cubagem do total de itens no carrinho.
Segue uma lógica:
/**
* Calcular cubagem de produto(s) no carrinho
* @param array $carrinho_lista carrinho de compras
{
http://www.dothcom.net/blog/comercio-eletronico/calculo-de-frete-com-multiplos-volumes-dos-correios/
Se nada mudou, a lógica é esta!