Ir para conteúdo
Fórum Script Brasil

marcoisa

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que marcoisa postou

  1. Boa noite no meu site esta dando a seguinte mensagem quando vai calcular o frete: Notice: A non well formed numeric value encountered in /home2/alternat/public_html/catalog/model/shipping/pac.php on line 49 o frete calcula direitinho, mas a mensagem é uma coisa chata. alguém sabe me dizer o que é isso e como retirar? segue o codigo da pagina: <?php class ModelShippingpac extends Model { function getQuote($address) { $this->load->language('shipping/pac'); if ($this->config->get('pac_status')) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int)$this->config->get('pac_geo_zone_id') . "' AND country_id = '" . (int)$address['country_id'] . "' AND (zone_id = '" . (int)$address['zone_id'] . "' OR zone_id = '0')"); if (!$this->config->get('pac_geo_zone_id')) { $status = TRUE; } elseif ($query->num_rows) { $status = TRUE; } else { $status = FALSE; } } else { $status = FALSE; } $method_data = array(); if ($status) { function arredonda_peso_pac($peso){ $tipo = gettype($peso); $peso = str_replace(",",".",$peso); settype($peso,"float"); if (floor($peso)<$peso) { $peso = ceil($peso); } settype($peso,$tipo); return $peso; } function calcula_pac_pag($cepOrigem,$cepDestino,$peso,$valoor){ require_once('frete.php'); $frete = new PgsFrete; $valorFrete = $frete->gerar($cepOrigem, $peso, $valoor, $cepDestino); if($valorFrete==erro1'){ $erro_postall='-3'; return $dadosfrete = array("valor" => "0.0", "errofrete" => $erro_postall); } else { return $dadosfrete = array("valor" => number_format($valorFrete['PAC], 2, '.', ''), "errofrete" => 0); } } function calcula_pac($cepOrigem,$cepDestino,$peso,$valoor){ $urlCorreios = "http://www.correios.com.br/encomendas/precos/calculo.cfm?resposta=xml&servico=41106&cepOrigem=%s&cepDestino=%s&peso=%s&valorDeclarado=%s"; $urlCorreios = sprintf($urlCorreios, $cepOrigem, $cepDestino, $peso, $valoor); //carregando url dos correios... // inicio modificacao bruno trazzini $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $urlCorreios); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 0); $file_contents = curl_exec($ch); curl_close($ch); $carrega = explode("\n", $file_contents); $conteudo = trim(str_replace(array("\n", chr(13)), "", implode($carrega, ""))); // fim modificacao bruno trazzini if(strlen($conteudo) <1) return false; //informações de origem tratadas com RegExp... if(preg_match_all("/<preco_postal>(.*)<\/preco_postal>/", $conteudo, $preco_postal)){ $preco_da_postagem = $preco_postal[1][0]; preg_match_all("/<tarifa_valor_declarado>(.*)<\/tarifa_valor_declarado>/", $conteudo, $preco_tarifa); $preco_da_tarifa = $preco_tarifa[1][0]; $preco_da_postagel = ($preco_da_postagem + $preco_da_tarifa); }else { $preco_da_postagel=0; } if($preco_da_postagel){ $valooor= floatval($preco_da_postagel); return $dadosfrete = array("valor" => number_format($valooor, 2, '.', ''), "errofrete" => 0); }else { if(!preg_match_all("/<codigo>(.*)<\/codigo>/", $conteudo, $erro_postal)){ $erro_postall= 666; }else { $erro_postall=$erro_postal[1][0]; } return $dadosfrete = array("valor" => "0.0", "errofrete" => $erro_postall); } } // Função getpac retirada do blog Lucas Ferreira //http://blog.lucasferreira.com/2008/02/11/correios-pac-e-o-tão-famigerado-calculo-de-frete/ $cepOrigem = $this->config->get('pac_postcode'); $cepDestino = $address['postcode']; $peso = $this->cart->getWeight(); $total_compra = $this->tax->calculate($this->cart->getSubTotal(), $this->config->get('zone_tax_class_id'), $this->config->get('config_tax')); $total_compra = preg_replace("/[^0-9]/", "", $total_compra); $total_compra = number_format($total_compra,'2','.',''); if($peso==0){ $peso = 0.300; } $peso = arredonda_peso_pac($peso); if($peso>30) { $var_quant = ceil($peso / 30); $pesoparcial = ceil($peso / $var_quant); $valorparcial = ceil($total_compra / $var_quant); $resultado = 0; for($i=1;$i<=$var_quant;$i++) { if($this->config->get('pac_modofrete')==1){ $valorparcial = number_format($valorparcial,'2',',',''); $shipping = calcula_pac_pag($cepOrigem,$cepDestino,$pesoparcial,$valorparcial); //pagseguro }else{ $shipping = calcula_pac($cepOrigem,$cepDestino,$pesoparcial,$valorparcial); //correios } $resultado = $resultado + $shipping['valor']; } } else { if($this->config->get('pac_modofrete')==1){ $total_compra = number_format($total_compra,'2',',',''); $shipping = calcula_pac_pag($cepOrigem,$cepDestino,$peso,$total_compra); }else{ $shipping = calcula_pac($cepOrigem,$cepDestino,$peso,$total_compra); } $resultado = $shipping['valor']; } if($shipping['errofrete']){ $titulo_pac = $this->language->get('text_pac_title_erro_correios'); $descricao_pac = $this->language->get('text_pac_erro_busca_valor'); if($shipping['errofrete']==31){ $descricao_pac.=$this->language->get('text_pac_erro_cod_31'); }else if($shipping['errofrete']==-4") { $descricao_pac.=$this->language->get('text_pac_erro_cod_-4'); }else if($shipping['errofrete]=="-2") { $descricao_pac.=$this->language->get('text_pac_erro_cod_-2'); }else if($shipping['errofrete']==-3") { $descricao_pac.=$this->language->get('text_pac_erro_cod_-3'); } else if($shipping['errofrete]=="666") { $descricao_pac.=$this->language->get('text_pac_erro_cod_666'); } }else { $titulo_pac = $this->language->get('text_pac_title'); $descricao_pac = $this->language->get('text_pac_description'); } $quote_data = array(); $quote_data['pac'] = array( 'id' => 'pac.pac', 'title' => $descricao_pac, 'cost' => $resultado, 'tax_class_id' => $this->config->get('pac_tax_class_id'), 'text' => $this->currency->format($this->tax->calculate($resultado, $this->config->get('pac_tax_class_id'), $this->config->get('config_tax'))) ); $method_data = array( 'id' => 'pac', 'title' => $titulo_pac, 'quote' => $quote_data, 'sort_order' => $this->config->get('pac_sort_order'), 'error' => FALSE ); } return $method_data; } } ?>
×
×
  • Criar Novo...