Jump to content

ment0r

Members
  • Content count

    128
  • Joined

  • Last visited

Community Reputation

1 Comum

1 Follower

About ment0r

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. ment0r

    Problema com SweetAlert

    Obrigado amigo. Retomei o projeto e isso que você me passou, resolveu o problema. Grande abraço.
  2. ment0r

    Manter conteúdo <td> e acrescentar outros

    WallyssonBr, primeiramente muito obrigado pelo retorno. Mas infelizmente não é isso; essa parte eu já fiz. O que eu queria é que listasse todos os itens aonde na imagem está o HALLS. Ex:. eu escolho o produto HALLS, digito a quantidade e o mesmo é acrescentado na onde ele já está; depois escolho COCA-COLA, digito a quantidade e a mesma é acrescentada embaixo do HALLS com todas as informações e assim vai indo até o cliente terminar do pedido. Exatamente igual à um supermercado.
  3. Boa tarde a todos. Eu estou aproveitando a quarentena pra estudar e em aprofundar mais em JQuery. Comecei então um protótipo de PDV pra por em prática o aprendizado. Anexei uma imagem da tela. Basicamente é isso: o usuário digita um código e ao sair (blur), preenche o nome do produto e valor; quando o usuário clica em quantidade (keyup) faz o cálculo de valor unitário X qtde e exibe no campo total item. Quando o campo total item perde o foco (blur), os dados vão para o canto superior esquendo (conforme imagem) e ficam como linha daquela tabela. Só que quando eu faço uma nova consulta, ele apaga o registro anterior. O que eu queria é que quando eu pesquisasse um novo produto e fizesse o cálculo, armazenasse o segundo produto na linha de baixo e não apagasse o anterior. Esse trecho busca o valor e exibe nos campos - tudo ok aqui. // Pega o valor digitado no campo código // Passa como parametro para função buscaProduto codigo.blur(function(){ if (codigo.val() != '') { buscaProduto(codigo.val()); } else { alert('Por favor, digite algum valor no campo código'); codigo.focus(); } }); // Função responsável por buscar os dados do produto function buscaProduto(codigo){ $.ajax({ url : "busca_produto.php", type : 'post', cache: false, // não mantém os dados em cache dataType: 'json', // não é necessário passar quando é html data : { cod : codigo }, success: function(msg){ produto.val(msg.NOME); valor.val(msg.PRECO); quantidade.focus(); } }) } Esse trecho adiciona a linha dos dados na tabela do canto superior esquerdo. // Executa a função preencheDados quando o input #total_item perde o foco total_item.blur(function(){ preencheDados(codigo.val(), produto.val(), quantidade.val(), valor.val(), total_item.val()) }) // Preeche os dados calculados na tela function preencheDados(codigow, produtow, quantidadew, valorw, total_itemw){ th = '<th>1</th>'; th += '<th>'+codigow+'</th>'; th += '<th>'+produtow+'</th>'; th += '<th>'+quantidadew+'</th>'; th += '<th>'+valorw+'</th>'; th += '<th>'+total_itemw+'</th>'; destino.html(th); descricao.val(produtow); valor_down.val(valorw); quantidade_down.val(quantidadew); total_item_down.val(total_itemw); sub_total.val('Calcular...'); codigo.val('').focus(); produto.val(''); quantidade.val(''); valor.val(''); total_item.val(''); } Se alguém puder me dar uma dica de como adicionar essa segunda linha (th) eu agradeço muito. Um abraço a todos.
  4. ment0r

    Problema com SweetAlert

    Galera, alguém tem mais alguma sugestão?
  5. ment0r

    Problema com SweetAlert

    Primeiramente muito obrigado pela resposta @Thiago Az. Em alguns casos eu não posso tirar o window.location. Por exemplo: numa página de atualização de dados, caso o usuário digite algo errado, a alerta é exibida e eu redireciono com o window.location = "pagina.php?id=X" para que a página volte com as informações iniciais. Preciso estudar sessionStorage , pois sinceramente não conheço. Tirando o sessionStorage , não há o que fazer pra corrigir esse problema? Obrigado.
  6. ment0r

    Problema com SweetAlert

    Boa noite amigos, tudo bem? Estou implementando os alerts do meu sistema com o plugin SweetAlert. Consegui implantar normalmente exceto por um detalhe: Quando há um window.location logo abaixo (igual ao trecho do código abaixo), a alerta é exibida e já direcionada instantaneamente para a página em questão. Já tentei com o BootBox e acontece a mesma coisa. <script language="javascript"> swal("Atenção", "Por favor, preencha o campo corretamente.", "warning"); window.location = "pagina.php"; </script> Alguém tem alguma ideia do que eu possa fazer pra corrigir esse problema. Muito obrigado desde já e bom trabalho a todos. Att. Douglas.
  7. ment0r

    Validar extensão de imagem

    Muito obrigado amigo pela ajuda. Eu não sabia desse accept rsrs, já resolve a situação pra mim. Embora a outra forma seja mais sofisticada, vou ficar com essa mesmo. Muito obrigado mais uma vez.
  8. ment0r

    Validar extensão de imagem

    Boa noite minha gente, tudo bem com vocês? Eu estou fazendo um formulário simples que carrega uma imagem, um título e um texto. Queria que quando a imagem fosse carregada uma função JavaScript validasse sua extensão, só permitindo .jpg, .jpeg, .gif, .bmp e .png e só liberasse o botão Cadastrar quando uma dessas 5 opções fossem escolhidas (ou não, só exibindo que a extensão não está correta e não permitir o carregamento já está ótimo). Tenho esse código abaixo (que peguei na internet), mas não sei como chamá-lo, uma vez que eu tenho duas etapas: 1) Clicar no botão Browse - pra escolher a imagem. 2) Escolher a imagem e clicar em Abrir. Com onclick no <input type="file"> não deu... Enfim, se alguém puder me ajudar, eu ficarei muito agradecido. Um grande abraço a todos. if (document.getElementById('file').value == "") { formfotos.botao.disabled = true; formfotos.botao.value = 'Selecione a foto'; }else { caminho = document.getElementById('file').value; var extensao; extensao = caminho.split("/"); extensao = extensao[ (extensao.length-1) ].split("."); extensao = extensao[ (extensao.length-1) ]; if (extensao != "jpg" && extensao != "gif" && extensao != "bmp") { formfotos.botao.disabled = true; formfotos.botao.value = 'Escolha a foto'; }else { formfotos.botao.disabled = false; formfotos.botao.value = 'Enviar foto'; } }
  9. Boa tarde amigos. Depois de muito bater cabeça, quase consegui fazer o que eu queria, exceto por uma coisa. Consigo fazer o valor aparecer num select, mas não num input. Vejam os códigos (páginas de exemplo somente, dps mudo pra página definitiva) Nesse página index.php eu tenho a lista de produtos, exibidos via select. index.php <label>Valor</label> <!-- ONDE APARECE ATUALMENTE --> <select name="valor" id="valor"> <option value="">Selecione</option> <option value="Todos">Todos</option> </select> <select name="produto[]" id="produto" class="form-control"> <option value="" selected="selected">Escolha um produto</option> <?php $select = "select * from PRODUTO"; $query = ibase_query($select); while ($array = ibase_fetch_object($query)) { echo ' <option value="'.trim($array->NOME).'" >'.utf8_decode(trim($array->NOME)).'</option> '; } ?> </select> <!-- ONDE EU GOSTARIA QUE APARECESSE --> <input name="valor-unitario[]" id="valor-unitario" type="text" class="form-control" placeholder="Valor unitário"> Nesse script, a mágica é feita, ele envia os valores pra getValor.php, lá é retornado os preços e então deveria aparecer no input do código acima, mas só consigo fazer aparecer no <option> $(document).ready(function(){ $("#produto").change(function(){ $.ajax({ type: "POST", url: "getValor.php", data: {produto: $("#produto").val()}, dataType: "json", success: function(json){ var options = ""; $.each(json, function(key, value){ options += '<option value="' + key + '">' + value + '</option>'; }); $("#valor").html(options); } }); }); }); Já adianto que mudei #valor pra #valor-unitario e options += '<option value="' + key + '">' + value + '</option>'; para options += '<input type="text" name="valor-unitario" value="' + key + '">'; tanto com key, quanto com value Acredito que agora seja só um detalhe pra finalizar essa zebra. Código do getValor.php, pra quem precisar <?php include"../inc/conn.php"; $retorno = array(); $selectValor = "select * from PRODUTO where nome = '".$_POST['produto']."'"; $query = ibase_query($selectValor); while ($array = ibase_fetch_object($query)) { $retorno[trim($array->ID)] = trim($array->PRECO); } echo json_encode($retorno); ?> Conto com vocês amigos. Desde já, muito obrigado.
  10. Omar~, te mandei uma MP, por favor, de uma olhada. Ademais, vou tentar adaptar o código ao meu sistema e posto o resultado assim que o fizer. Muito obrigado.
  11. Caro Omar~ A parte de pedido do meu sistema será da seguinte forma: Cada vez que clico no + acrescenta mais um item do pedido e no - elimina esse item. Desse modo, uso um vetor, ou seja, o name="valor-unitario[]" pra poder armazenar todos os itens do pedido e no final, tratá-los. Minha pergunta é, com esse seu exemplo daria pra fazer assim? Adaptei seu código, mas não estou conseguindo... /* * Teste.php */ <link href="AjaxRequest.css" rel="stylesheet" type="text/css"/> <script src="AjaxRequest.js" type="text/javascript"></script> <!-- <select id="seletor"> <option value="consulta1">Maçã</option> <option value="consulta2">Laranja</option> <option value="consulta3">Banana</option> </select> --> <select id="id_produto[]" name="id_produto" class="form-control"> <option value="" selected="selected">Escolha um produto</option> <?php require'../inc/conn.php'; $select = "select * from PRODUTO"; $query = ibase_query($select); while ($array = ibase_fetch_object($query)) { echo ' <option value="'.trim($array->ID).'" >'.utf8_decode(trim($array->NOME)).'</option> '; } ?> </select> <input id="valor-unitario" name="valor-unitario[]" type="text" class="form-control" placeholder="Valor unitário"> <!-- <input type="text" id="informacao1"/> <input type="text" id="informacao2"/> --> <div id="local_do_ajax">1</div> <script> var ajax = new AjaxRequest(); document.getElementById('seletor').addEventListener('change', executaAjax, false); function executaAjax(e) { var valor = e.target.value; if (valor) { ajax.pop('local_do_ajax', 'arquivo_php.php?parametro=' + valor, false); } } </script> E /* * Arquivo_php.php - a principio não mudei os nomes */ <?php require'../inc/conn.php'; echo' <script language="javascript"> alert ("Chegou aqui"); </script> '; $_GET['parametro'] = 1; if (isset($_GET['parametro']) && !empty($_GET['parametro'])) { /*$valor = filter_input(INPUT_GET, 'parametro', FILTER_DEFAULT);*/ $select = "select * from PRODUTO where id = ".$_GET['parametro']; $query = ibase_query($conn, $select); $info = ibase_fetch_object($query); ?> <script> document.getElementById('valor-unitario').value = '<?= $info->PRECO ?>'; </script> } Coloquei o GET recebendo 1 só pra testar, mas mesmo assim não deu. Criei uma pasta e colei todos os arquivos lá. Não consigo achar onde estou errando. Se puder abusar de sua boa vontade... eu agradeço. Muito obrigado desde já.
  12. Muuuito obrigado Omar pela ajuda. Vou ler atentamente seu conteúdo e vou adaptar para meu sistema. Assim que eu conseguir posto aqui e se caso enroscar rsrs, peço ajuda novamente. Na verdade ele poderá alterar sim, pq o valor é pego do cadastro do produto, mas no momento do pedido, pode ser que ele esteja com valor diferente. Mais uma vez, MUITO OBRIGADO.
  13. Olá amigos. Mais uma problema que precisa ser resolvido... Bom, dessa vez é o seguinte: tenho um <select> que traz de uma tabela PRODUTO (id, nome, unidade, preco) o nome. Preciso que ao escolher um produto, seja preenchido automaticamente um <input> com o preço referente à esse produto. Alguém pode me ajudar de uma forma mais simples possível? Já adianto os agradecimento àqueles que postarem vídeo aulas sobre javascript e/ou ajax, mas como se trata de uma parte do sistema, preciso resolver com urgência pra não ficar 'empacado' na mesma, portanto um exemplo prático é o que peço no momento. Muito obrigado desde já a todos. Um grade abraço.
  14. ment0r

    Inserir vários produtos no pedido

    Caro administrador, não achei como fazer, mas pode colocar esse tópico como resolvido. Obrigado.
  15. ment0r

    Inserir vários produtos no pedido

    Ninguém moçada? Nada? Qualquer ajuda é bem vinda.
×

Important Information

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