Jump to content

renpanvil

Members
  • Content count

    49
  • Joined

  • Last visited

Community Reputation

7 Regular

About renpanvil

  • Birthday 11/22/1990

Informações Pessoais

  • Sexo
    Masculino

Contato

  1. Boa noite a todos, Estou com um problema que não consigo resolver. Criei uma loja virtual para o meu cliente e agora ele pediu uma alteração que não tenho ideia de como se faz. Ele quer que quando o cliente selecione uma forma de pagamento específica eu adicione mas 10 ao valor final do checkout. Procurei onde o Magento monta esses valores mas só encontrei a função renderTotals() que me retorna o valor final, mas quando eu altera ela só altera no frontend no final das contas o magento manda o valor anterior para o pagamento. Imagino que eu tenha que alterar algo nessa classe mas já arrebentei o site duas vezes mexendo aqui. app\code\core\Mage\Tax\Block\Checkout\Subtotal.php class Mage_Tax_Block_Checkout_Subtotal extends Mage_Checkout_Block_Total_Default Preciso muito dessa ajuda pessoal agradeço desde já.
  2. Fala galera estou com um semi-problema aqui em um sistema que estou desenvolvendo na empresa que trabalho. Porque um Semi-problema? Semi problema porque o código em si está funcionando porem o PHP está printando um Warning bem grande na tela reclamando que não estou enviando um tal de Callback na minha função, enfim vou mostrar minha função e a chamada atravez do call_user_func_array(); Essa é minha requisição em Ajax var url = $("#url").val(); //pega a url base var dados = $("#nome_do_form :input").serializeArray(); //serealiza o form var met = 'nomeMetodo'; //nome do metodo $.ajax({ type: "POST", url: url + 'controller', data: {met: met, url: url, dados: dados}, success: function (result) { $("#resultado").empty(); $("#resultado").append(result); } }); Quem recebe esse Ajax é o meu Controller através de um roteamento que vai destrinchar essa url dinamica que o Ajax passou. Podem ver que a variável met está me trazendo qual vai ser o nome do metodo a ser executado no controller. Segue meu controller $metodo = 'NomeClass::'.$_POST['met']; //nome do metodo já concatenado com o nome da classe //aqui montamos o array com os dados que o Ajax enviou no serialize for ($c = 0; $c < count($_POST['dados']); $c++) { $dados[$c] = $_POST['dados'][$c]['value']; } //Aqui nos chamamos nosso metodo dentro da função call_user_func_array //passamos dois parametros, os dados e uma conexão com o banco de dados //Nessa chamada de call_user_func_array() que ocorre nosso Warnning if (call_user_func_array($metodo, array($dados, new Config()))) { // <------------------------- echo ' Salvo em ' . date("d-m-Y") . ' - ' . date("H:i:s"); } Abaixo vou passar o código do modelo moçada mas o problema está acontecendo nessa chamada que marquei do Controller. O mais estranho é que seu chegar ali e trocar a variavel $metodo por uma string com a referencia do metodo ex('NomeClass::nomeMetodo') o warnning não aparece. Segue o Modelo class nomeClass { public static function nomeMetodo($dados, $mysql, $callback=null){ if($_SERVER['REQUEST_METHOD']=='POST'){ $cadastra = $mysql->conn()->prepare('INSERT INTO `tabela`(dado1, dado2, dado3) VALUES (?, ?, ?)'); if(is_callable($callback)){ echo 'Callback'; } else { return $cadastra->execute($dados); } } } } Como podem ver eu ate tentei criar o callback com um video que vi mas não funcionou, continua dando o erro, acho que ele está confundindo algum dado que estou passando com eu querer passar um callback, isso é possível. Galera deixo essa dúvida mortal com vocês, hoje estou usando um @ para não printar o warnning porque como disse a função está funcionando perfeitamente sussa. Muito obrigado desde já
  3. renpanvil

    CRUD em PHP não salva no MYSQL

    Sobre Ajax É sempre uma boa usar para deixar uma interface show, porém usar demais deixa brechas de segurança, tente passar tokens na requisição ajax para validar esse recebimento. Uma vez eu vi um cara que fez um formulário de e-mail simples se ferrar porque usou ajax, nego rodou um script JS em looping no console mesmo do chrome e lotou a caixa de e-mail do maluco. Para o jovem que criou o tópico só tenho uma frase. Aprenda PDO... Segue baixo exemplos de conexão em PDO <?php //conexão com o bd, pode ser qlq bd seja mysql ou postgre try { $db = new PDO($host, $usuario, $senha,array( PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8' )); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { if($e->getCode() == 1049){ echo "Banco de dados errado."; }else{ echo $e->getMessage(); } } ?> Agora a consulta e impressão dos dados <?php try { $sql = $db->prepare("SELECT * FROM sua_tabela"); $sql->execute(); } catch (PDOException $e) { echo $e->getMessage(); } $registro = $sql->fetch(PDO::FETCH_OBJ); //IMPRIMINDO $registro->nome_do_campo; ?> Tem um post no meu blog sobre isso http://blog.squad.net.br/2015/11/25/diga-nao-ao-mysql_-e-sim-ao-pdo-php/ Qualquer dúvida podem perguntar Até
  4. renpanvil

    Problemas com mysql_query()

    É sempre bom ver que vocês estão conseguindo se ajudar galera mas vamos lembrar que as funções mysql_ estão obsoletas desde 2006 e estamos fazendo um grande esforço para que vocês criem sempre código com qualidade. Por isso é importante lembrar de sempre pedir a utilização da biblioteca PDO ou mysqli_ que são as mais modernas, a partir do PHP 7 as funções mysql_ não vão mais funcionar então fiquem ligados e se mantenham atualizados. Segue baixo exemplos de conexão em PDO <?php //conexão com o bd, pode ser qlq bd seja mysql ou postgre try { $db = new PDO($host, $usuario, $senha,array( PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8' )); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { if($e->getCode() == 1049){ echo "Banco de dados errado."; }else{ echo $e->getMessage(); } } ?> Agora a consulta e impressão dos dados <?php try { $sql = $db->prepare("SELECT * FROM sua_tabela"); $sql->execute(); } catch (PDOException $e) { echo $e->getMessage(); } $registro = $sql->fetch(PDO::FETCH_OBJ); //IMPRIMINDO $registro->nome_do_campo; ?> Tem um post no meu blog sobre isso, da uma lida lá http://blog.squad.net.br/2015/11/25/diga-nao-ao-mysql_-e-sim-ao-pdo-php/ Qualquer dúvida podem perguntar Até
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.