Jump to content

AnthonyKamers

Members
  • Content count

    72
  • Joined

  • Last visited

Everything posted by AnthonyKamers

  1. Tenho duas tabelas, a titulospagar e a titulosavulsos e em ambas eu tenho o campo placaMotorista e gostaria de somar os valores de cada uma Gostaria de fazer uma query, juntando os dados delas em determinado tempo, dando GROUP BY em placaMotorista. Fiz as duas queries a seguir, mas os valores retornam errados (muito grandes para cada placa). SELECT SUM(a.valorTitulo) AS geralPlaca, SUM(b.valorTitulo) AS manutencaoPlaca, b.placaMotoristaTitulo AS placa FROM titulospagar a, titulosavulsos b WHERE a.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && b.dataTitulo BETWEEN '$dataDe' AND '$dataAte' && a.placaMotoristaTitulo = b.placaMotoristaTitulo && b.placaMotoristaTitulo != 'Nenhum' GROUP BY a.placaMotoristaTitulo, b.placaMotoristaTitulo ORDER BY a.placaMotoristaTitulo ASC, b.placaMotoristaTitulo ASC SELECT SUM(titulospagar.valorTitulo) AS geralPlaca, SUM(titulosavulsos.valorTitulo) AS manutencaoPlaca, titulospagar.placaMotoristaTitulo AS placa FROM titulospagar INNER JOIN titulosavulsos ON titulospagar.placaMotoristaTitulo != 'Nenhum' && titulospagar.placaMotoristaTitulo = titulosavulsos.placaMotoristaTitulo && titulospagar.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && titulosavulsos.dataTitulo BETWEEN '$dataDe' AND '$dataAte' GROUP BY titulospagar.placaMotoristaTitulo, titulosavulsos.placaMotoristaTitulo ORDER BY titulospagar.placaMotoristaTitulo ASC Em ambas retorna o mesmo valor para cada placa, mas o valor que retorna é errado. Exemplo do erro com o SQLFiddle: http://www.sqlfiddle.com/#!9/4cdd5c/1 Se alguém puder me ajudar, agradeço desde já!!
  2. Estou fazendo um sistema em PHP (vai funcionar todo Local), do qual precisa fazer vários Uploads de imagens e arquivos pesados. Alterei no php.ini e alterei todas as configurações como post_max_size, upload_max_filesize, memory_limit, max_execution_time para os maiores valores possíveis, mas mesmo assim não consigo fazer upload de arquivos com mais de 30Mb - 50Mb... Está funcionando todo Local, logo pensei que não teria essa dificuldade... gostaria de poder fazer upload de quantos Mb/Gb eu precisar... Preciso muito disso para o funcionamento do meu sistema. Desde já agradeço
  3. AnthonyKamers

    [Resolvido] Servidor Wamp não cadastra imagens "grandes" (LOCAL) - PHP

    Descobri o que estava errado!!!! Tinha colocado o seguinte input hidden depois do input file, pois tinha visto em algum outro forum: <input type="hidden" name="MAX_FILE_SIZE" value="10485760"> Simplesmente não o tirei, porque pensei que estava certo... obviamente estava enganado. Tirei o input hidden e deu certo. Agradeço à todos pela ajuda!!
  4. AnthonyKamers

    [Resolvido] Servidor Wamp não cadastra imagens "grandes" (LOCAL) - PHP

    Segue print da tela com phpinfo(); Como pode observar, está tudo como foi dito para editar.
  5. AnthonyKamers

    [Resolvido] Servidor Wamp não cadastra imagens "grandes" (LOCAL) - PHP

    Olá amigo, obrigado pela resposta. Mas mesmo após colocar essas configurações no php.ini, não consigo cadastrar arquivos com, por exemplo, 30Mb... Preciso fazer "upload" de arquivos grandes, mas é tudo Local, então acredito que isso não teria problema, poderia colocar quantos Mb quisesse e faria upload, mas isso não acontece. Teria alguma forma de fazer upload de arquivos como 150Mb / 300Mb?? Já tentei colocar 10G no php.ini, mas também não deu.
  6. Preciso cadastrar múltiplas linhas no banco de dados e preciso q um dos campos some automaticamente. Tenho o quantidadePaletes[ ] e o valorPorPalete[ ]. no total[ ], preciso q multiplique o quantidadePaletes * valorPorPalete e grave no SQL. <form method="post"> <h3>Novo Relatorio</h3> <table id="tabla"> <tr> <td><input required name="codigoRelatorio[]" placeholder="Codigo"/></td> <td><input required name="clientePrincipal[]" placeholder="Cliente da MSK"/></td> <td><input required name="clienteRelatorio[]" placeholder="Cliente"/></td> <td><input required name="nf[]" placeholder="Notas Fiscais"/></td> <td><input required name="quantidadePaletes[]" placeholder="Quantidade de Paletes"/></td> <td><input required name="valorPorPalete[]" placeholder="Valor Por Palete"/></td> <td><input required name="total[]" placeholder="Total"/></td> <td class="eliminar"><input type="button" value="Menos -"/></td> </tr> </table> <div> <input type="submit" name="insertar" value="Inserir Dados"/> <button id="adicional" name="adicional" type="button"> Mais + </button> </div> </form> <?php //////////////////////// PRESSIONAR O BOTÃO ////////////////////////// if(isset($_POST['insertar'])) { $items1 = ($_POST['codigoRelatorio']); $items2 = ($_POST['clienteRelatorio']); $items3 = ($_POST['nf']); $items4 = ($_POST['quantidadePaletes']); $items5 = ($_POST['valorPorPalete']); $items6 = ($_POST['total']); $items7 = ($_POST['clientePrincipal']); ///////////// SEPARAR VALORES DE ARRAYS, NESTE CASO SÃO 6 ARRAYS UM POR CADA INPUT (CODIGO, CLIENTE, NF, QUANTIDADE, PORPALETE, TOTAL) ////////////////////) while(true) { //// RECUPERAR VALORES E JUNTÁ-LOS //////// $item1 = current($items1); $item2 = current($items2); $item3 = current($items3); $item4 = current($items4); $item5 = current($items5); $item6 = current($items6); $item7 = current($items7); ////// CONCATENAR PARA RESPECTIVAS VARIÁVEIS /////////////////// $codigo=(( $item1 !== false) ? $item1 : ", "); $cliente=(( $item2 !== false) ? $item2 : ", "); $nf=(( $item3 !== false) ? $item3 : ", "); $qntd=(( $item4 !== false) ? $item4 : ", "); $porPalete=(( $item5 !== false) ? $item5 : ", "); $total=(( $item6 !== false) ? $item6 : ", "); $principal=(( $item7 !== false) ? $item7 : ", "); //// CONCATENAR VALORES PARA FUTURA INSERÇÃO //////// $valores='('.$codigo.',"'.$cliente.'","'.$nf.'","'.$qntd.'","'.$porPalete.'","'.$total.'","'.$principal.'"),'; //////// COMA É TERMINADO COM CADA LINHA, SUBTRAI COM FUNCÇÃO SUBSTR NA ÚLTIMA FILA ///////////////////// $valoresQ= substr($valores, 0, -1); ///////// QUERY DE INSERÇÃO //////////////////////////// $sql = "INSERT INTO relatorio (codigoRelatorio, clienteRelatorio, nf, quantidadePaletes, valorPorPalete, total, clientePrincipal) VALUES $valoresQ"; $sqlRes=$connection->query($sql) or mysql_error(); $idUltimo = mysqli_insert_id($connection); // Up! Next Value $item1 = next( $items1 ); $item2 = next( $items2 ); $item3 = next( $items3 ); $item4 = next( $items4 ); $item5 = next( $items5 ); $item6 = next( $items6 ); $item7 = next( $items7 ); // Check terminator if($item1 === false && $item2 === false && $item3 === false && $item4 === false && $item5 === false && $item6 === false && $item7 === false) break; } if($sql){ echo " <script>window.open('verRelatorio.php?id=$idUltimo')</script> <meta http-equiv='refresh' content='0; url=relatorio.php' /> <script type='text/javascript'>alert ('Dados foram Inseridos com Sucesso!!')</script> "; } else { echo " <meta http-equiv='refresh' content='0; url=relatorio.php' /> <script type='text/javascript'>alert ('Dados não foram Inseridos com Sucesso!!')</script> "; } } ?> No momento, estou tendo que digitar o total manualmente, porém preciso que isso seja pego automaticamente
  7. Preciso pegar/get os dados de uma Array, porém para isso, preciso pegar a KEY dela com um Foreach; Resultado da minha array array (size=2) 0 => array (size=2) 'idProduto' => int 23 'Quantidade' => int 1 1 => array (size=2) 'idProduto' => int 22 'Quantidade' => int 1 Tentei pegar a key assim: foreach($_SESSION['carrinho'] as $carrinho){ $idProduto = $carrinho['idProduto']; $key = key($carrinho); } o idProduto é pego normalmente, entretanto o $key dá print desta forma: $key = idProduto Preciso muito disso, galera; Agradeço a todos, desde já
  8. Estou desenvolvendo uma loja virtual e estou complementando com o checkout transparente do pagseguro (https://comunidade.pagseguro.uol.com.br/hc/pt-br/community/posts/220126928-Exemplo-de-Checkout-Transparente). Estou conseguindo pegar o preço dos produtos automaticamente, mas não consigo adicionar um preço de frete ou um desconto especial (extras). Não vejo onde pode ser colocado esse código automaticamente. Desde já agradeço à todos pela colaboração.
  9. AnthonyKamers

    Site "exploited"/"hacked" pelo SQL PHP

    Olá Fiz um site e ao pôr online, depois de duas semanas ele foi "hackeado"/"exploited". Uso MySQLI para me conectar pelo banco de dados e descobri que é só quando eu uso "SELECT * FROM" e eu uso a variável, que o exploit se "instala". Como no seguinte código: $sql4 = mysqli_query($con, "SELECT * FROM ... WHERE ... != '1' ORDER BY RAND() LIMIT 1") or die(mysqli_error($con)); $ln4 = mysqli_fetch_assoc($sql4); $teste = $ln4['teste']; Quando eu coloco "echo" na variável $teste, o exploit "começa". Mas se eu não me conectar com o banco de dados, o exploit não funciona. Há como evitar isso? Não uso prepared statement, se eu usá-lo, não poderá mais ser hackeado? Como posso eviar isso? Conto com a ajuda de todos. Desde já agradeço
  10. AnthonyKamers

    Site "exploited"/"hacked" pelo SQL PHP

    Eu tenho certeza que foi hackeado. Está escrito: "Hacked by CyberTeam"
  11. AnthonyKamers

    Site "exploited"/"hacked" pelo SQL PHP

    Usei o seguinte código com prepared statement: <?php $idDif="1"; $options = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; $link = new PDO("mysql:host=$host;dbname=$db", "$user", "$pass", $options); $stmt = $link->prepare("SELECT * from `teste` WHERE idTeste!=?"); $stmt->execute([$idDif]); $result = $stmt->fetchAll(); foreach ($result as $row): ?> <h2 style="text-align:center;margin:0 auto"> <?=$row["nomeTeste"]?> </h2> <br/> <div> <p> <?=$row["valorTeste"]?> </p> <hr style="color:black;width:10%"/> </div> <?php endforeach;?> e mesmo assim, o exploit continua. Não sei como fizeram para inserir dados no servidor e quando eu acesso meu banco de dados ele bloqueia. Como posso resolver?
  12. AnthonyKamers

    Site "exploited"/"hacked" pelo SQL PHP

    Eu nem estou dando POST para pegar os resultados, pois estou quero listar todos os resultados do DB. Dessa forma, eu não preciso usar. Mas o problema é quando eu uso mysql ou mysqli, aí entra a tela de exploit:
  13. AnthonyKamers

    array_push Associative Array com Isset POST

    Pessoal, desculpe pelo incômodo. CONSEGUI. if(isset($_POST['adicionar'])){ $rows = array(); while($ln1 = mysqli_fetch_assoc($sql1)){ $campoSQL = $ln1['campo']; $textoClienteSQL = $ln1['textoCliente']; $string = $_POST[$campoSQL]; //array_push($rows[$textoClienteSQL], $string); $rows[$textoClienteSQL] = $string; } var_dump($rows); } //Fim isset POST
  14. AnthonyKamers

    array_push Associative Array com Isset POST

    Preciso pegar dados que eu não sei exatamente os "names" de cada input, então eu os pego por SQL (pois os cadastrei previamente) e pego os dados novos por POST: if(isset($_POST['adicionar'])){ $rows = array(); while($ln1 = mysqli_fetch_assoc($sql1)){ $campoSQL = $ln1['campo']; $textoClienteSQL = $ln1['textoCliente']; $string = $_POST[$campoSQL]; array_push($rows[$textoClienteSQL], $string); } var_dump($rows); } //Fim isset POST Porém está dando um erro: Warning: array_push() expects parameter 1 to be array, null given Por que está dando esse erro? Ele está dando POST normalmente, mas não coloca dentro da Array. Desde já agradeço à todos
  15. AnthonyKamers

    Javascript dentro do Ajax não está funcionando

    Pessoal, consegui resolver. coloquei no index.php echo ' <script type="text/javascript"> $("#content'.$k.'").on("click", "button", function () { //use event delegation $("#content'.$k.' .div").fadeToggle(); }); </script> '; Entretanto ele "Toggle/Flash" 3 vezes antes de aparecer totalmente, sabem me dizer o por quê?
  16. Estou pegando um dado e dando request por Ajax para colocar o conteúdo em uma div. Porém no arquivo do ajax, eu tenho um javascript que executa a função "leia mais", mas não está funcionando. index.php echo ' <div class="lightbox" id="lightbox'.$k.'"> <a href="#_">Fechar</a> <div id="content'.$k.'"></div> </div> '; echo ' <script type="text/javascript"> function showContent'.$k.'(obj){ var id = obj.getAttribute("class"); $.ajax({ type: "GET", url: "getContent.php", data: { q: id }, }).done( function( data ) { document.getElementById("content'.$k.'").innerHTML = data; }); } </script> '; getContent.php echo '<button>Leia Mais</button>'; echo '<p class="div" style="display:none;">Teste de FadeToggle</p>'; <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> $("button").click(function(e){ e.preventDefault(); $("p").fadeToggle(); }); </script> Porém o "Teste de FadeToggle" não aparece na div onde deveria aparecer pelo Ajax. Alguém tem alguma ideia do que pode ser o erro?? Desde já agradeço à todos.
  17. AnthonyKamers

    [Resolvido] IF não funcionando ao dar query no POST

    Consegui!!! Segue o código atualizado: $sql2 = "SELECT * FROM contasreceber"; /* Por Data de Venda */ if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){ $sql2 .= " WHERE dataVenda between '$dataDe' AND '$dataAte' ORDER BY dataVenda ASC"; } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){ $sql2 .= " WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' ORDER BY dataVenda ASC"; } $qr2 = mysqli_query($con, $sql2) or die(mysqli_error($con));
  18. Olá galera. Tenho um form e dou POST normalmente e considerando os dados faz uma query diferente para cada caso. O problema é que não está identificando a query dentro do IF do Isset($_POST). antes do <head> if(isset($_POST['envia'])){ $dataDe = $_POST['dataDe']; $dataAte = $_POST['dataAte']; $tipoData = $_POST['tipoData']; //dataVenda / dataPagamento $status = $_POST['status']; //Pago / Em Andamento $tipoReceber = $_POST['tipoReceber']; //Online / Presencial $cliente = $_POST['cliente']; /* Por Data de Venda */ if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte'") or die(mysqli_error($con)); } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con)); } } no <body> while($ln2 = mysqli_fetch_assoc($sql2)){ $dados = $ln2['dados']; ... } Fiz isso em outra página com apenas uma condição e deu certo, mas com essas condições está dando erro. Erro: Undefined variable: sql2 Obrigado desde já.
  19. AnthonyKamers

    [Resolvido] IF não funcionando ao dar query no POST

    Valeu pela resposta. Mas eu preciso checar mais condições, só coloque duas, mas tenho mais, pois checo uma por uma: Dados Completos: /* Por Data de Venda */ if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte'") or die(mysqli_error($con)); } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con)); } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber != "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber'") or die(mysqli_error($con)); } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber != "" && $cliente != ""){ $qSubst = substr($cliente, -1); // c / u $idNormal = str_replace($qSubst, "", $cliente); $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber' && idCliente = '$idNormal'") or die(mysqli_error($con)); } elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente != ""){ $qSubst = substr($cliente, -1); // c / u $idNormal = str_replace($qSubst, "", $cliente); $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && idCliente = '$idNormal'") or die(mysqli_error($con)); } /* por Data de Pagamento */ elseif($tipoData == "dataPagamento" && $status = "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte'") or die(mysqli_error($con)); } elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber == "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con)); } elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber != "" && $cliente == ""){ $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber'") or die(mysqli_error($con)); } elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber != "" && $cliente != ""){ $qSubst = substr($cliente, -1); // c / u $idNormal = str_replace($qSubst, "", $cliente); $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber' && idCliente = '$idNormal'") or die(mysqli_error($con)); } elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber == "" && $cliente != ""){ $qSubst = substr($cliente, -1); // c / u $idNormal = str_replace($qSubst, "", $cliente); $sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && idCliente = '$idNormal'") or die(mysqli_error($con)); }
  20. Olá à todos. Com a ajuda do Forum, consegui multiplicar valores de uma tabela dinamicamente com Ajax, entretanto nesse exemplo eu preciso digitar todos os conteúdos, isso é quantidade e valor unitário. Mas agora preciso pegar o valor unitário dinamicamente, do qual fiz com Ajax, mas não estão funcionando: O multiplicacao.php pega dados de Ajax do getProdServ.php e getProdServ.php. Mas ao pegar o dado pela linha <div class="prodPreco"></div> para mostrar o resultado do Ajax por uma busca dinâmica com PHP, não calcula. multiplicacao.php <head> <script> function showProdutos(str) { if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementsByClassName("prodserv")[0].innerHTML = this.responseText; } }; xmlhttp.open("GET","getProdServ.php?tipo="+str,true); xmlhttp.send(); } </script> <script> function showPreco(str) { if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementsByClassName("prodPreco")[0].innerHTML = this.responseText; } }; xmlhttp.open("GET","getProdPreco.php?id="+str,true); xmlhttp.send(); } </script> </head> <body> <form action="" method="post" name="realizarPedido"> <label>Cliente</label> <br> <select required name="cliente" id="cliente"> <? $sql = "SELECT * FROM cliente ORDER BY nomeCliente ASC"; $qr = mysqli_query($con, $sql) or die(mysqli_error($con)); while($ln = mysqli_fetch_assoc($qr)){ echo '<option value="'.$ln['idCliente'].'">'.$ln['nomeCliente'].'</option>'; } ?> </select> <br><br> <label>Data Venda</label> <br> <input type="date" required name="dataVenda"> <br><br> <table border="1" align="center" style="text-align: center;" cellpadding="1" cellspacing="1"> <thead align="center"> <tr> <td>Tipo de Serviço</td> <td>Produto / Serviço</td> <td>Quantidade do Produto</td> <td>Valor Unitário</td> <td>Sub Total</td> </tr> </thead> <tbody id="body-table"> <tr> <td><select required name="tipoVenda[]" id="tipoVenda" onChange="showProdutos(this.value)"> <option value="">Selecione uma Opção</option> <option>Serviço</option> <option>Produto</option> </select></td> <td><div class="prodserv"></div></td> <!-- Produto --> <td><input type="text" class="updateFields qtd" name="qtd[]"/></td> <td><div class="prodPreco"></div></td> <td><input type="text" class="updateFields valorsubtotal" name="valorsubtotal[]" /></td> </tr> </tbody> <tfoot> <tr> <td colspan="4" style="text-align:center">Total:</td> <td><input type="text" id="total" name="total" style="font-weight: bolder" readonly /></td> </tr> </tfoot> </table> <input type="submit" name="insertar" value="Cadastrar Item(ns)"> </form> <br> <button id="btn-addCell">Adicionar Cell</button> <button id="btn-acao">Atualizar</button> <!-- jQuery --> <script src="../js/jquery-1.11.3.min.js"></script> <script> function getFieldNameByClass(classes){ classesArr = classes.split(" "); for(x in classesArr){ if(classesArr[x] == 'qtd') return 'qtd'; if(classesArr[x] == 'valorunitario') return 'valorunitario'; if(classesArr[x] == 'valorsubtotal') return 'valorsubtotal'; } } //Encapsulamos para poder chamar em outro contexto var updateFields = function(){ var fields = document.getElementsByClassName("updateFields"); for (var i = 0; i < fields.length; i++) { fields[i].addEventListener('keyup', function() { var thisTr = this.parentElement.parentElement; var tdChilds = thisTr.childNodes; var subTotalLinha = {}; for(var y = 0;y < tdChilds.length; y++){ //Pega apenas os Node reais if(tdChilds[y].nodeType == tdChilds[y].ELEMENT_NODE){ //Dentro do Node (td) navega até o input td->input var input = tdChilds[y].childNodes[0]; var inputName = getFieldNameByClass(input.className); subTotalLinha[inputName] = input.value; //Deixa a referencia ao node, para atualizar após a conta if(inputName == 'valorsubtotal'){ subTotalLinha['nodeRef'] = input; } } } //is Defined or null? if(subTotalLinha['qtd'] == null || subTotalLinha['qtd'] == '') return false; if(subTotalLinha['valorunitario'] == null || subTotalLinha['valorunitario'] == '') return false; var qtd = parseFloat(subTotalLinha['qtd']); var valorunitario = parseFloat(subTotalLinha['valorunitario']); var subTotal = qtd * valorunitario; subTotalLinha['nodeRef'].value = subTotal; //Vamos somar todos os campos a classe valorsubtotal var subtotalFields = document.getElementsByClassName("valorsubtotal"); var total = 0; for(var i = 0; i < subtotalFields.length; i++){ if(subtotalFields[i].value != ''){ total += parseFloat(subtotalFields[i].value); } } //Agora atualiza o campo 'Total' document.getElementById("total").value = total; }, false); } } updateFields(); </script> </body> getProdPreco.php <!DOCTYPE html> <html> <head> </head> <body> <?php include "../connection.php"; $q = $_GET['id']; $qSubst = substr($q, -4); //Gera prod/serv /* Usar str_replace $q / $qSubst */ $idNormal = str_replace($qSubst, "", $q); if($qSubst == "prod"){ $sql = mysqli_query($con, "SELECT * FROM produto WHERE idProduto = '$idNormal'") or die(mysqli_error($con)); $ln = mysqli_fetch_assoc($sql); $precoProdutoVenda = $ln['precoProdutoVenda']; echo '<input type="text" readonly value="'.$precoProdutoVenda.'" class="updateFields valorunitario" name="valorunitario[]">'; } elseif($qSubst == "serv"){ $sql1 = mysqli_query($con, "SELECT * FROM servico WHERE idServico = '$idNormal'") or die(mysqli_error($con)); $ln1 = mysqli_fetch_assoc($sql1); $precoServico = $ln1['precoServico']; echo '<input type="text" readonly value="'.$precoServico.'" class="updateFields valorunitario" name="valorunitario[]">'; } ?> </body> </html> getProdServ.php <!DOCTYPE html> <html> <head> </head> <body> <?php include "../connection.php"; $q = strval($_GET['tipo']); if($q == "Serviço"){ echo ' <select required name="nomeProduto[]" onChange="showPreco(this.value)" class="updateFields select"> <option value="" class="updateFields">Selecione uma Opção</option> '; $sql = mysqli_query($con, "SELECT * FROM servico ORDER BY servico ASC") or die(mysqli_error($con)); while($ln = mysqli_fetch_assoc($sql)){ $servico = $ln['servico']; $precoServico = $ln['precoServico']; $idServico = $ln['idServico']; echo '<option value="'.$idServico.'-serv" class="updateFields">'.$servico.'</option>'; } echo ' </select> '; } elseif($q == "Produto"){ echo '<select required name="nomeProduto[]" onChange="showPreco(this.value)" class="updateFields select"> <option value="" class="updateFields">Selecione uma Opção</option> '; $sql1 = mysqli_query($con, "SELECT * FROM produto WHERE codigoProduto != '1' ORDER BY nomeProduto ASC") or die(mysqli_error($con)); while($ln1 = mysqli_fetch_assoc($sql1)){ $idProduto = $ln1['idProduto']; $nomeProduto = $ln1['nomeProduto']; $precoProdutoVenda = $ln1['precoProdutoVenda']; echo '<option value="'.$idProduto.'-prod" class="updateFields">'.$nomeProduto.'</option>'; } echo ' </select>'; } else { echo 'ERRO'; } ?> </body> </html> Alguém saberia me dizer pq o Ajax está influenciando na multiplicação do Javascript, pois sem o Ajax funciona normalmente. Desde já agradeço à todos.
  21. AnthonyKamers

    Mesclar imagens vindos do MySQL com PHP ou Javascript

    Obrigado pela resposta. Mas desculpe, penso que me expressei da maneira errada. Já tenho feito uma loja virtual, o que eu preciso é o usuário colocar uma foto e aparecer sobre a foto do produto, como um mockup. Há como eu fazer isso com PHP + Jquery?
  22. Estou tentando desenvolver um sistema de loja com produtos "dinâmicos", ou seja, o usuário escolhe a foto que quer usar e coloca no produto e vai para o carrinho. Como nos sites http://www.fotoregistro.com.br/ e http://fancyproductdesigner.com/. Preciso muito disso, mas não sei por onde começar, poderiam me dizer qual a linguagem ou como eu posso fazer isso? OBS.: Desculpa se eu postei na sessão de PHP de forma errada. Agradeço desde já à todos.
  23. Estou pegando o tipo de frete por Ajax, porém o valor retornado, que precisa estar como: <input type="hidden" name="extras" value="'.$variavelAqui.'"> não está funcionando. Estou usando o Ajax da seguinte forma: <script> function showFreteValor(str) { if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("valorFrete").innerHTML = this.responseText; } }; xmlhttp.open("GET","getValorFrete.php?tipoFrete="+str,true); xmlhttp.send(); } </script> Tudo que está dentro da div com id="valorFrete", o Pagseguro não identifica. Há como viabilizar esta div, talvez mudando o javascript?? Desde já, agradeço à todos
  24. AnthonyKamers

    Excluir uma Array de dentro de uma Session

    Consegui pessoal. Procurando na Internet, achei uma Function com Foreach que consegui usar no meu sistema: //Deletar Produto do Carrinho if(isset($_GET['delete']) && isset($_GET['token'])){ $tokenDelete = $_GET['token']; foreach($_SESSION['carrinho'] as $subKey => $subArray){ if($subArray['token'] == $tokenDelete){ unset($_SESSION['carrinho'][$subKey]); } //Fim if Foreach } //Fim Foreach } //Fim Delete //Fim Deletar Produto do Carrinho Valeu pessoal por todo o apoio. VALEU
  25. Estou fazendo um carrinho que pega os dados do SQL, mas não deixa como ID único. Está da pegando os itens dessa forma: if(isset($_GET['adicionar']) && isset($_GET['idProduto']) && isset($_GET['tipoForma']) && isset($_GET['subSubForma'])){ $idProduto = $_GET['idProduto']; $tipoForma = $_GET['tipoForma']; $subSubForma = $_GET['subSubForma']; $fotoProduto = ""; $idFotoProduto = ""; $quantidade = 1; $arr = array("idProduto" => $idProduto, "tipoForma" => $tipoForma, "subSubForma" => $subSubForma, "fotoProduto" => $fotoProduto, "idFotoProduto" => $idFotoProduto, "Quantidade" => $quantidade); var_dump($arr); $_SESSION['carrinho'][] = $arr; } e com o var_dump(): array (size=3) 0 => array (size=6) 'idProduto' => string '23' (length=2) 'tipoForma' => string 'Pequeno' (length=7) 'subSubForma' => string '' (length=0) 'fotoProduto' => string '' (length=0) 'idFotoProduto' => string '' (length=0) 'Quantidade' => int 1 1 => array (size=6) 'idProduto' => string '19' (length=2) 'tipoForma' => string 'Médio' (length=6) 'subSubForma' => string '' (length=0) 'fotoProduto' => string '[2]20151119_224108.jpg' (length=22) 'idFotoProduto' => string '61' (length=2) 'Quantidade' => int 1 2 => array (size=6) 'idProduto' => string '23' (length=2) 'tipoForma' => string 'Pequeno' (length=7) 'subSubForma' => string '' (length=0) 'fotoProduto' => string '' (length=0) 'idFotoProduto' => string '' (length=0) 'Quantidade' => int 1 Eis minha pergunta, preciso apagar o array de, por exemplo, Key [2], como devo proceder?? Estou fazendo da seguinte forma para pegar os dados da Session: foreach($_SESSION['carrinho'] as $carrinho){ $id = $carrinho['...']; $... = $carrinho['...']; } Desde já agradeço a qualquer resposta ou ajuda.
×

Important Information

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