Ir para conteúdo

renpanvil

Members
  • Total de itens

    49
  • Registro em

  • Última visita

Reputação

7 Regular

Sobre renpanvil

  • Data de Nascimento 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. renpanvil

    Warning de Callback na função call_user_func_array()

    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é
  5. renpanvil

    Modo de programar PHP

    Beleza tony_lu. Qualquer dúvida estamos ai.
  6. renpanvil

    Limitar busca no DB

    Você diz porque o retorno vai carregar todos os dados no array e não havia necessidade de puxar tudo. Dei a ele um exemplo com LIMIT na query. Mas você tem razão se a tabela ficar grande vai pesar bastante.
  7. renpanvil

    Limitar busca no DB

    Pode fazer de duas maneiras. Ou na query sql ou no php usando for, vou mostrar as duas. SQL no final da sua query inclua LIMIT $query = "SELECT * FROM minhatabela LIMIT 10"; Ou use um looping for no PHP for($i = 0; $1 <= 10; $i++){ echo $value['texto_do_campo'][$i]; } Espero ter ajudado Qualquer dúvida estamos aew abraço
  8. renpanvil

    Modo de programar PHP

    Não levamos você a mal de forma alguma Danicarla, o bom é perguntar mesmo. Falo por experiência própria, se não perguntar e sair fazendo de qlq jeito vai ter que dar uma volta muito longa depois, e se por acaso alguém for babaca com você não fique triste, esse cara não é um desenvolvedor de verdade, porque programadores de verdade como os que conheceu aqui nesse post, e nesse fórum contribuem para comunidade ajudando todos os desenvolvedores e programadores não importa seu nível. Não há diferença nenhuma entre eu e você, porque se há uma verdade na área da informática é que nunca paramos de aprender, pois todo mês tem coisa nova. Uma nova IDE, um novo framework, uma nova versão de uma linguagem. Então estamos todos aprendendo, eu, Beraldo, Tony_lu e você. Sobre sua dúvida veja bem: mysql_query é uma função que pretende a uma biblioteca de funções do php chamada mysql_. Essa biblioteca tem várias outras funções como mysql_connect, mysql_fetch_array e outras. mysqli_ como já explicaram é essa biblioteca de funções melhorada. Também existe uma forma mais versátil de se comunicar com bancos de dados não só mysql mais vários outros com uma classe do PHP chamada PDO. Fiz um post ontem sobre PDO no meu blog e sobre essas outras questões. Basea-se também na dúvida do Tony_lu, se quiser ler segue o link http://blog.squad.net.br/2015/11/25/diga-nao-ao-mysql_-e-sim-ao-pdo-php/ Qualquer dúvida não deixe de perguntar Abraço a todos
  9. renpanvil

    Inserir dados na BD através de formulário

    Muito prazer Pauloenoatt, Sim sim eu entendo, veja que parabenizo você por ter ajudado seu colega, só estou aqui lembrando mesmo sobre o PDO, você está de parabéns por ajudar os novos desenvolvedores. É engraçado porque quando comecei a postar em fóruns também postava respostas em mysql_ porque achava mais fácil de entender e porque o código das pessoas já estava em mysql_ então de qualquer forma seria mais fácil para elas. Dai um progrmador mestre Jedi me falou "Amigo, não estou te reprimindo, porém se ensinarmos algo defasado, podemos condenar essa pessoa a ser um mal programador para sempre". A partir dai comecei a postar códigos em PDO independente da pergunta da pessoa, claro que, bem explicado e mostrando métodos de conexão. Parabéns por seu trabalho, e depois poste esse MVC para que possamos dar uma olhada, quem sabe até no github para que possamos utilizar também. Se quiser entre no meu blog, lá escrevo conteúdo para novos desenvolvedores, e todos nós somos novos desenvolvedores, porque sempre há algo novo para estudar. http://blog.squad.net.br/ Abraço
  10. renpanvil

    Inserir dados na BD através de formulário

    É 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; ?> Qualquer dúvida podem perguntar Até
  11. renpanvil

    Modo de programar PHP

    Olá Tony, Te entendo perfeitamente, parece que foi ontem que resolvi enfrentar o mundo POO e MVC para evoluir e sair desse escopo antigo que vamos utilizando, utilizando, e teimamos em não abandonar. Também tive muita resistência em abandonar as funções mysql_ e a programação procedural, a mesma resistência que tenho contra os milhares de frameworks que vemos por ai hoje em dia, mas temos que aprende-los. Temos que aceitar que na nossa profissão estamos constantemente aprendendo, somos eternos alunos, porque todo mês tem uma ferramenta nova que não conhecemos. Não da para aprender tudo, por isso temos que ficar de olho no que o mercado está pedindo, e tentar ter um bom leque de opções. Nesse último mês fiquei buscando emprego e vi que cada vez mais as empresas querem desenvolvedores mais versáteis, querem que você saiba tudo, e você tem que se preparar para isso o melhor possível. Segue o link para o meu blog onde estou postanto esses passos que tenho dado. Em homenagem a sua dúvida vou fazer hoje um post sobre PDO. http://blog.squad.net.br/ Até mais a noite eu faço o post. Qualquer dúvida estamos ai amigo, e boa sorte. Abraço
  12. renpanvil

    Business Intelligence no PHP

    Pelo que entendi você só precisa de uma estrutura php para imprimir os dados na tela correto? Não sei qual seu nível de experiencia mais acredito que você já tenha um localhost funcionando na sua maquina tipo Wamp ou xampp. Se for o caso é só salvar esse código como .php na pasta www e colocar sua query onde mostro no exemplo. Use PDO como o Beraldo falou, segue abaixo um bloco de código de exemplo. <?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(); } } try { $sql = $db->prepare("SUA QUERY SQL AQUI"); $sql->execute(); } catch (PDOException $e) { echo $e->getMessage(); } $registro = $sql->fetch(PDO::FETCH_OBJ); //IMPRIMINDO $registro->nome_do_campo; ?> Espero ter ajudado Até
  13. renpanvil

    Intranet

    Depois posta o link para agente ver, podemos sugerir melhorias, principalmente de segurança.
  14. renpanvil

    Menu dorp down n interage com mysql

    Então amigão, conforme o Beraldo disse acima, funções mysql_ não se usam mais, por isso vou por para você um exemplo usando PDO ok. Exemplo de conexão de banco com 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 como seria a solução do seu problema com PDO <?PHP try { $query = $db->prepare("SELECT idusuario, nome FROM usuario"); $query->execute(); } catch (PDOException $e) { echo $e->getMessage(); } ?> <label for="nivel">Nome:</label> <select class="form-control" id="nome" name="nome" required=""> <option value="sl" selected>--Selecione--</option> <?PHP while ($prod = $query->fetch(PDO::FETCH_ASSOC)){ echo '<option value="'.$prod['idusuario'].'">'.$prod['nome'].'</option>'; } ?> </select> </label> ?> Qualquer dúvida estamos ai Abraço
  15. renpanvil

    Eventos de Desenvolvimento

    Poxa acabei perdendo esse, mais vou ficar de olho. Obrigado amigo. Abraço
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.