Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''jquery''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Todas as áreas do Fórum

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento Web
    • Desenvolvimento frontend
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets e outros ambientes
    • Desenvolvimento com Wordpress
    • Desenvolvimento de apps
    • Desenvolvimento ágil
    • Desenvolvimento de Games
    • Banco de Dados
    • Design e UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • Boteco iMasters

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Encontrado 143 registros

  1. gersonab

    consultar cep pelo endereço

    Bom dia. utilizava um código para completar o endereço conforme o cep, funcionando perfeitamente, só que preciso pegar o cep caso não tenha, pelo endereço digitado, pesquisando pela internet encontrei o código abaixo, funciona perfeitamente para os dois casos, só que .... no meu formulário tenho dois campos de endereço, um residencial e outro de trabalho, o código que utilizava antes funcionava para os dois campos, erá só mudar o id do campo do formulário, tipo se eu tinha id="logadouro" em um campo no outro id="logadouro1", só que .... no código atualizado para ambas as pesquisas esta forma não funciona, gostaria da ajuda de vocês para este problema. código antigo: function limpa_formulário_cep() { $("#logradouro").val(""); $("#bairro").val(""); $("#localidade").val(""); $("#uf").val(""); } $("#cep").blur(function() { var cep = $(this).val().replace(/\D/g, ''); if (cep != "") { var validacep = /^[0-9]{8}$/; if(validacep.test(cep)) { $("#logradouro").val("..."); $("#bairro").val("..."); $("#localidade").val("..."); $("#uf").val("..."); $.getJSON("https://viacep.com.br/ws/"+ cep +"/json/?callback=?", function(dados) { if (!("erro" in dados)) { $("#logradouro").val(dados.logradouro); $("#bairro").val(dados.bairro); $("#localidade").val(dados.localidade); $("#uf").val(dados.uf); } else { limpa_formulário_cep(); alert("CEP não encontrado."); } }); } else { limpa_formulário_cep(); alert("Formato de CEP inválido."); } } else { limpa_formulário_cep(); } }); como podem ver era só duplicar e mudar o id, agora neste ja não consigo var inputsCEP = $('#logradouro, #bairro, #localidade, #uf'); var inputsRUA = $('#cep, #bairro'); var validacep = /^[0-9]{8}$/; function limpa_formulário_cep(alerta) { if (alerta !== undefined) { alert(alerta); } inputsCEP.val(''); } function get(url) { $.get(url, function(data) { if (!("erro" in data)) { if (Object.prototype.toString.call(data) === '[object Array]') { var data = data[0]; } $.each(data, function(nome, info) { $('#' + nome).val(nome === 'cep' ? info.replace(/\D/g, '') : info).attr('info', nome === 'cep' ? info.replace(/\D/g, '') : info); }); } else { limpa_formulário_cep("CEP não encontrado."); } }); } // Digitando RUA/CIDADE/UF $('#logradouro, #localidade, #uf').on('blur', function(e) { if ($('#logradouro').val() !== '' && $('#logradouro').val() !== $('#logradouro').attr('info') && $('#localidade').val() !== '' && $('#localidade').val() !== $('#localidade').attr('info') && $('#uf').val() !== '' && $('#uf').val() !== $('#uf').attr('info')) { inputsRUA.val('...'); get('https://viacep.com.br/ws/' + $('#uf').val() + '/' + $('#localidade').val() + '/' + $('#logradouro').val() + '/json/'); } }); // Digitando CEP $('#cep').on('blur', function(e) { var cep = $('#cep').val().replace(/\D/g, ''); if (cep !== "" && validacep.test(cep)) { inputsCEP.val('...'); get('https://viacep.com.br/ws/' + cep + '/json/'); } else { limpa_formulário_cep(cep == "" ? undefined : "Formato de CEP inválido."); } }); desde já agradeço.
  2. Salveee! Certo a dúvida que trarei aqui agora é bem complexa e eu sinceramente não sei se é realmente possível mas acho que não custa nada perguntar. Fiz um site de envio de textos, onde o aluno envia um texto e o professor corrigi até ai blz, queria saber como eu poderia fazer pra quando o professor marcar uma palavra aprece-se uma caixa de dialogo onde ele colocaria, por exemplo, a correção da palavra ou alguma explicação e essas informações seriam enviadas para o banco de dados quando o aluno acessa a correção desse texto e o ele passa-se mouse por cima dessa palavra apareceria a correção em um balãozinho. Como exemplo desse comportamento que acabei de citar temos o google documents que faz algo desse jeito. Queria saber se isso pode ser possível sem exigir muito código ou muita coisa. Desde já agradeço.
  3. Preciso colocar a o atributo fadeIN e fadeOut em uma lista de acordo com o numero que o usuário clicar. Porem não estou conseguindo formular a função do script para isso No id #RESPOSTA tenho os números 1 - 5 - 10 - 20 - 30 - 40 - 50 - 100 - 200 - 300 O que estou tentando e ao clicar na resposta 10 por exemplo, Todos os resultados da lista maiores que 10 sumam e logo depois se eu clicar em 50, permaneça os abaixo de 10 e apareça os ID's ate 50 Como se fosse um filtro, clico em 10, só aparece os de 1 ate 10, clico em 50, so aparece os entre 1 ate 50 e assim por diante. Porem dinamicamente, so adicionando fadeOut e fadeIn
  4. marcelocardoso

    Google Recaptcha V3 - Param não resgata

    olá colegas. depois de tanto quebrar a cabeça com o RECAPTCHA do google, v3. não estou conseguindo resgatar o ID do INPUT hidden que guarda o TOKEN!!!! Segue código HTML <!DOCTYPE html> <html lang="pt_BR"> <head> <meta charset="utf-8"> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta content="ie=edge" http-equiv="X-UA-Compatible"> <title>Google Recaptcha - v3</title> <!-- STYLES CSS --> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/css/inputmask.min.css"> <!-- STYLES CSS --> <!-- SCRIPTS JS --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-form@4.2.2/dist/jquery.form.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/jquery.validate.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/localization/messages_pt_BR.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery-validation@1.19.1/dist/additional-methods.min.js"></script> <!-- SCRIPTS JS --> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <script src="https://www.google.com/recaptcha/api.js?render=6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC"></script> <!-- SCRIPTS RECAPTCHA - SITE KEY --> <style type="text/css"> *:focus { outline: none !important; } html, body { height: 100%; width: 100%; } body { color: darkgrey; margin: 60px 0px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* google captcha - hidden na tela */ .grecaptcha-badge { display: none !important; } .valid-class { color: #006400; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .error-class { color: #e33d00; padding-left: 12px; padding-top: 3px; font-size: 15px; display: block; } .loading { position: fixed; left: 0px; top: 0px; margin: 0px; width: 100%; height: 100%; display: block; z-index: 999999; opacity: 0.92; -moz-opacity: 0.92; filter: alpha(opacity=98); background-color: #00224b; background-image: url("img/loading.gif"); background-repeat: no-repeat; background-position: 50% 50%; text-align: center; overflow: hidden; font-weight: bold; font-size: 25px; color: white; padding-top: 25%; } </style> </head> <body> <!-- code | formulario --> <section class="container-fluid"> <h1 class="text-center">RECAPTCHA</h1> <h4 class="text-center">GOOGLE v3</h4> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12"> <form id="frm_form_contato" method="post" action="inc/google-form.asp"> <div class="form-group"> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_nome">Nome</label> <input type="text" id="campo_nome" name="campo_nome" class="form-control" autocomplete="name" placeholder="Digite seu nome"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_email">Email</label> <input type="text" id="campo_email" name="campo_email" class="form-control" autocomplete="email" placeholder="Digite seu e-mail"> </div> <div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 mb-2"> <label class="control-label" for="campo_mensagem">Mensagem</label> <textarea type="text" id="campo_mensagem" name="campo_mensagem" class="form-control" placeholder="Descreva sua mensagem"></textarea> </div> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 mt-4"> <div id="contato_retorno"></div> <button id="btn-form" type="submit" class="btn btn-block btn-md btn-success">ENVIAR</button> </div> </div> <input type="hidden" id="token"> </form> </div> <div id="contato_carregando"></div> </section> <!-- code | formulario --> <!-- GOOGLE reCAPTCHA --> <script type="text/javascript"> "use strict"; //formulario de validacao $("#frm_form_contato").validate({ errorClass: "error-class", validClass: "valid-class", onkeyup: function (element) { this.element(element); }, onfocusout: function (element) { this.element(element); }, rules: { campo_nome: { required: true, minlength: 5, maxlength: 50 }, campo_email: { required: true, minlength: 5, email: true }, campo_mensagem: { required: true, minlength: 5, maxlength: 5000 } }, submitHandler: function (form) { grecaptcha.ready(function () { grecaptcha.execute('6LesQewUAAAAAIWQKRKk19yob6G8hx3LEoYXybIC', { action: 'homepage' }).then(function (token) { $("input#token").attr({ "value": "" + token + "" }); }); }); // A) resgatar variaveis (uma por uma) var form_url = $(this).attr("action"); var form_method = $(this).attr("method"); var form_token = $(this).find('input[name="token"]').val(); var form_nome = $(this).find('input[name="campo_nome"]').val(); var form_email = $(this).find('input[name="campo_email"]').val(); var form_telefone = $(this).find('input[name="campo_telefone"]').val(); var form_mensagem = $(this).find('input[name="campo_mensagem"]').val(); // B) resgatar variaveis (tudo de uma vez) // var form_data = $("#frm_form_contato").serializeArray(); var form_data = { 'campo_nome': $("#campo_nome").val(), 'campo_email': $("#campo_email").val(), 'campo_mensagem': $("#campo_mensagem").val(), 'campo_token': $("#token").val(), }; // ENVIAR FORM com POST // $("form").submit(function (e) { // e.preventDefault(); // var $form = $(this); // $.post($form.attr("action"), $form.serialize()).then(function () {}); // }); //ENVIAR FORM com AJAX $.ajax({ url: $("#frm_form_contato").attr("action"), type: $("#frm_form_contato").attr("method"), data: JSON.stringify(form_data), dataType: 'json', contentType: 'application/json; utf-8', //loading antes do sucesso e do envio beforeSend: function () { $("#btn-form").prop("disabled", false).text('Enviando ...').fadeIn(); $("#contato_carregando").html("<div class='loading'></div>").fadeIn(500); }, //se houver sucesso success: function (response) { setTimeout(function () { $("#contato_carregando").fadeOut(250); }, 3950); setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_certo'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $("#btn-form").prop("disabled", false).text('Enviado'); $(form)[0].reset(); }, 10000); }, //se houver sucesso, finaliza complete: function (response) { $('body').fadeTo(4000, '1'); }, //se houver erro error: function (response) { setTimeout(function () { $("#contato_retorno").html("<div class='valida_a_erro'>" + response + "</div>").fadeIn(500); }, 4000); setTimeout(function () { $("#contato_retorno").fadeOut(500); $(form)[0].reset(); }, 10000); }, }); return false; } }); </script> <!-- SCRIPTS RODAPE --> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/inputmask@3.3.11/dist/jquery.inputmask.bundle.js"></script> <!-- SCRIPTS RODAPE --> </body> </html> BACKEND - ASP não estou conseguindo repassar o TOKEN para cá, já tentei de várias formas... mas não consigo nem com REQUEST.QUERYSTRING, REQUEST e nem REQUEST.FORM. <% Response.LCID = 1033 'USA LCID IF Request.ServerVariables("SERVER_NAME") <> Request.ServerVariables("SERVER_NAME") THEN Response.Write "ACESSO RESTRITO!" ELSE G_TOKEN = Request.Form("campo_token") 'google token G_KEY_URL = "https://www.google.com/recaptcha/api/siteverify?secret=" 'google url G_KEY_SITE = "" 'google chave do site G_KEY_SECRET = "" 'google chave secreta IF Request.ServerVariables("REQUEST_METHOD") = "POST" THEN SET objXML = Server.CreateObject("MSXML2.ServerXMLHTTP") objXML.Open "GET", ""& G_KEY_URL & G_KEY_SECRET &"&response=" & G_TOKEN & "", false objXML.Send IF InStr(objXML.ResponseText, "TRUE") THEN campo_nome = Request.Form("campo_nome") campo_email = Request.Form("campo_email") campo_mensagem = Replace(Request.Form("campo_mensagem"), Chr(13), "<br>") cdoSERVER = "mail.teste.com.br" cdoORIGEM = "teste@teste.com.br" cdoPASS = "senha" cdoPORT = 587 cdoTIMEOUT = 120 cdoUSING = 2 cdoAUT = 1 cdoSSL = 0 cdoDE = campo_nome &" <"& campo_email &">" cdoPARA = "teste@teste.com.br" cdoASSUNTO = "teste - contato" cdoTEXT = "Envio de mensagem usando CDOSYS" SET objCDOSYSmail = Server.CreateObject("cdo.message") SET objCDOSYScon = Server.CreateObject("cdo.configuration") objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cdoPORT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoUSING objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoAUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = cdoTIMEOUT objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = cdoSSL objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = cdoSERVER objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = cdoORIGEM objCDOSYScon.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = cdoPASS objCDOSYScon.Fields.Update SET objCDOSYSmail.Configuration = objCDOSYScon objCDOSYSmail.From = cdoORIGEM objCDOSYSmail.To = cdoPARA objCDOSYSmail.Subject = cdoASSUNTO objCDOSYSmail.TextBody = cdoTEXT ON ERROR RESUME NEXT IF objCDOSYSmail.SEND = "" THEN Response.Write "Mensagem enviada com sucesso!" ELSE IF NOT ERR.NUMBER = "0" THEN Response.Write "Não foi possível enviar a mensagem!" Response.Write "OCORREU UM ERRO: " & Err.Number & " | " & Err.Description Err.Clear() END IF END IF ON ERROR GOTO 0 SET objCDOSYSmail = Nothing SET objCDOSYScon = Nothing ELSE Response.Write "recaptcha errado!" END IF SET objXML = Nothing END IF END IF %> Quem tiver tempo, e quiser dar uma olhada, só falta isso para finalizar o código, PASSAR o bendito parametro que não consigo do input para o ASP. No demais, agradeço. Até....
  5. Luiz Henrique

    success jquery

    Olá, Como posso utilizar o success com jquery? $.post('pagina.php',{valores...},function(data){ $('#result').html(data); var result = $(".class_div").text(); }); Depois da linha: var result = $(".class_div").text(); preciso executar uma outra requisição, porém se pagina.php já não tiver sido processada não funciona. tentei o code abaixo, mas não funciona, trava todo js. success: function(){ alert('executado'); } Obrigado.
  6. gersonab

    Criar um evento na linha do checkbox

    Bom dia meus amigos, estou precisando criar um evento numa linha de dados de uma consulta, sendo que esta linha deveria estar selecionada através do checkbox, tipo : Tenho uma listagem de informações de clientes, nesta lista tenho um checkbox para selecionar uma única linha, nesta podendo fazer alterações conforme um select option, sendo que este não esta na linha, esta fora dela, pois se eu tiver 3000 linhas, terei 3000 select option, logo o que eu preciso é pegar o id da linha e enviar para o select , onde ali escolherei a ação a tomar. não estou sabendo pesquisar ou dar uma partida para este, desde já agradeço a ajuda. <div class="action-btns d-none"> <div class="btn-dropdown mr-1 mb-1"> <div class="btn-group dropdown actions-dropodown"> <button type="button" class="btn btn-white px-1 py-1 dropdown-toggle waves-effect waves-light" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Ação </button> <div class="dropdown-menu dropdown-menu-right"> <a class="dropdown-item" href="#"><i class="feather icon-trash"></i>Editar</a> <a class="dropdown-item" href="#"><i class="feather icon-archive"></i>Inserir imagem</a> <a class="dropdown-item" href="#"><i class="feather icon-file"></i>Email</a> <a class="dropdown-item" href="#"><i class="feather icon-save"></i>Deletar</a> </div> </div> </div> </div> <div class="table-responsive"> <table class="table"> <thead> <tr> <th></th> <th>IMAGEM</th> <th>NOME</th> <th>CATEGORIA</th> <th>EMAIL</th> </tr> </thead> <tbody> <tr> <td><input type="checkbox" id="id" name="id" /></td> <td><img src="../cli/imagem.png" alt="img"></td> <td>Nome do cliente</td> <td>Categoria</td> <td>Email</td> </tr> <!-- aqui continua a lista, resumida para facilitar -->
  7. Estou utilizando rich faces e seu componente JQuery, para realizar formatação de campos decimais, estou utilizando o maskMoney e atribui uma precisão de 3 casas no meu input text, e tenho um campo disabled que é booleano, ele é acionado caso tenha mais coisas associadas a outro item no form abaixo, mesmo sabendo que a função disabled é apenas vísivel ela não faz nada de diferente, quando a minha função disabled é acionada tem como eu tirar as casas decimais dela. Fiz dessa forma abaixo: <f:facet name="header"> <h:outputLabel value="#{messages.conversion}"/> </f:facet> <h:inputText id="fldConversion" value="#{row.vlConversion}" label="#{messages.conversion}" maxLength="25" disabled="#{defaultMBean.canDisabledConversion(row)}"> <a4j:ajax event="change" immediate="true" render="@all, partnerItem, dataModel"/> <f:converter converterId="javax.faces.BigDecimal"/> <f:validateLength maximum="30" /> </h:outputText> <rich:jQuery selector="#fldConversion" query="maskMoney({decimal:''.'',allowNegative:false, showSymbol:false, thousands: '''',precision: 3})"/> E criei esse método para quando estiver desativado o campo: public BigDecimal canDisableConversionE(TypeDTO row) { BigDecimal r = row.getConversionValue().setScale(0, RoundingMode.HALF_EVEN); System.out.println(r); return r; } public Boolean canDisableConversion(TypeDTO row) { if (row.getId() == 1L && !canDisableConversionE()) { return false; } if (IsWeight(row.getId())) { return true; } return getConfigFacade().canDisableConversionE(row.getConversionValue()); }
  8. Bom dia, Eu to fazendo um projeto onde preciso ir adicionando eventos. Quando eu adiciono dois ou mas do primeiro setor selecionado da tudo certo. Mas quando removo e altero o setor, o select vem duplicado e os eventos vem duplicado também. Depois de remover e trocar o setor e adicionar novos eventos. --- popular a primeira aba que ja vem na pagina. $(function(){ $('#setor').change(function(){ if( $(this).val() ) { $('#evento').slideUp(); $.getJSON('function_setor.php?search=',{setor: $(this).val(), ajax: 'true'}, function(j){ var options = '<option value="">Escolha Evento</option>'; for (var i = 0; i < j.length; i++) { options += '<option value="'+j.id+'">'+j.desc+'</option>'; } $('#evento').html(options).slideDown(); }); } else { $('#evento').html('<option value="">Escolha Evento</option>'); } }); }); ---poupula as option dos select quando adiciono novo evento. $('#setor').blur(function(){ var sector = $(this).val(); $("#add").click(function(event) { cont ++; $("#new_add").append('<div class="row" id="campo'+cont+'"><div class="col"><div class="row"><div class="col"><button type="button" id="'+cont+'" class="btn btn-outline-secondary tamanho">-</button></div><div class="col"><select class="custom-select" id="evento'+cont+'" name="evento[]" tabindex="2"><option value="">Escolha Evento</option></select></div></div></div><div class="col"><textarea class="form-control" name="relato[]" id="relato'+cont+'" tabindex="3" placeholder="DESCRIÇÃO DO ACONTECIMENTO" required></textarea></div></div>'); $.getJSON('function_setor.php?search=',{setor: sector, ajax: 'true'}, function(j){ for (var i = 0; i < j.length; i++) { $("#evento"+cont+"").append('<option value="'+j.id+'">'+j.desc+'</option>'); } console.log(j); }); }); }); se puder me ajudar com esse problema que so ocorre quando eu troco o setor.
  9. Matheus B. Siqueira

    Erro em Undefined Index com Jquery e Php

    Estou desenvolvendo um código para enviar um texto digitado pelo usuário para outro php, em uma textarea, como abaixo: <label for="message-text" class="col-form-label">Comentário:</label> <textarea class="form-control" name="situacao" id="situacao"></textarea> Logo após desenvolvi um código em ajax para enviar esta informação para outro php: $(function inserirComentario(situacao){ $("#enviar_comentario").click(function(){ var situacao = $("#situacao").val(); var id = $('.carousel-item.active').attr('data-id') $.ajax({ url: 'video_professor_comentario.php', data: {'comentario_situacao' : $("#situacao").val()}, type: 'post', dataType:'json', success: function(output) { alert(output); }, error: function(request, status, error){ alert("Error: Could not delete"); } }); location.href='video_professor_comentario.php?id='+id }); }); Porém ao tentar enviar o erro que é apresentado é: Notice: Undefined variable: situacao in C:\xampp\htdocs\tcc\video_professor_comentario.php on line 26NULL O código em PHP, que é enviado, video_professor_comentario.php, consta abaixo: <?php //se não tiver o parametro, mata a aplicação. if(!isset($_GET['id'])) die(); if (isset($_POST['comentario_situacao'])) { $situacao = $_POST['comentario_situacao']; } //Aqui está um exemplo simples de como fazer uma conexão PDO $host = 'localhost'; $db = 'onteach'; $user = 'root'; $pass = 'root'; $charset = 'utf8mb4'; $dsn = "mysql:host=$host;dbname=$db;charset=$charset"; try { $pdo = new PDO($dsn, $user, $pass); } catch (PDOException $e) { throw new PDOException($e->getMessage(), (int)$e->getCode()); } var_dump($situacao); $pdo->exec("UPDATE `video_monitor` SET `situacao` = '.$situacao.' WHERE `video_monitor`.`idvideo_monitor` = ".$_GET['id']); var_dump($pdo); ?> <script> alert('Vídeo enviado ao monitor com sucesso!') var_dump($pdo); //location.href='professor.php' </script> Caso alguém souber resolver o erro, seria de muita ajuda para mim, visto que este trabalho é para meu tcc e os professores não ajudam muito!
  10. Olá! Tenho um formulário que dentro dele contem uma dropdownlist que utiliza o Bootstrap-Select (selectpicker) e quando clicado o mesmo carrega uma lista de opções provenientes do mysql. Ocorre que esta lista envia as opções marcadas para o mysql corretamente porém eu gostaria que a mesma, no que diz respeito a atualização de dados, carregasse as opções marcadas anteriormente ao ser clicada. Abaixo segue um método do selectpecker que inseri valores de um objeto em JSON e mostra as opções marcadas referente a esses valores: $('.selectpicker').selectpicker('val', [puxar valores de um objeto JSON aqui]); Baseando-se no método acima como faço para inserir valores de um objeto em JSON proveniente de um script php que envia o resultado em formato JSON para o ajax? Abaixo segue um trecho do Ajax que recebe os dados do script php e os mostra em um formulário com campos input e selectpicker. $(document).on('click', '.update', function(){ $.ajax({ url:"fetch_single.php", method:"POST", data:{user_id:user_id}, dataType:"json", success:function(data) { $('#camisas').val(data.camisas); $('.selectpicker').selectpicker('val', [valores de um objeto em JSON aqui]); $('.selectpicker').selectpicker('refresh'); } }) }); E abaixo o resultado em JSON que o AJAX recebe: {"camisa":"15","cores":"5,18,27"} No caso gostaria de que o selectpicker puxasse os valores do objeto "cores" como uma forma de marcar essas opções dentro da lista. É possível? Desde já agradeço a atenção.
  11. ment0r

    Manter conteúdo <td> e acrescentar outros

    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.
  12. marsolim

    $(this).val() versus this.value

    fala rapaziada tudo bem? sabe me dizer se tem diferença de performance, de compatibilidade e etc e tal entre o jquery $(this).val() e o javascript puro this.value? tava tentando pesquisar aqui mas não achei nada sobre. grato
  13. juliosertori

    Não diferenciar Minúsculas e Maiúsculas

    Olá boa tarde, tudo bem? Tenho uma consulta de CEP via AJAX, na qual ele seleciona a cidade no SELECT cidades: $("#cidade").val(dados.localidade); O problema é que tem que estar exatamente igual nos 2 lados, na consulta e no select. Como fazer para não diferenciar minúsculas e maiúsculas, e caracteres especiais? Obrigado!
  14. Hamilcar

    [Resolvido] Jquery não carrega

    Bom dia galera! Estou com um problema aqui que não sei o que acontece, nas minhas páginas uso o jquery, acredito que ele esteja dando problemas, pois tenho um quadro de slides e este quando chamo jquery direto da pasta, o slide não funciona, e quando coloco pra chamar via url, o slide funciona. Outra coisa, na parte de ajax, não consigo fazer as requisições, não funciona, não funciona localmente e não funciona em duas hospedagens gratuita que uso pra teste, mas funciona tudo na minha hospedagem paga, o mesmo código, sem tirar nem por nada, precisava funcionar pelo menos localmente para poder fazer manutenções localhost, alguém já passou por isto?
  15. juliosertori

    Moeda em Javascript com Erro Numérico

    Olá tudo bem? Tenho campos de produtos que somam os valores e multiplicam pela quantidade, na maioria das vezes o valor sai corretamente em um INPUT com MASK de Moeda, mas alguns valores sai por exemplo dessa forma: 8984.960000000001 O que faz com que não fique corretamente para mandar no POST e tratar os dados depois, na maioria das vezes ele vem correto, por exemplo: R$ 8,898.10 Não encontrei uma forma dele tratar quando tiver várias casas ele concertar etc.
  16. Pessoal, bom dia! Tenho o código abaixo que faz um efeito de parallax e está funcionando normalmente CSS #top { background: url("img/1.jpg"); height: 300px; } #mid { background: url("img/2.jpg"); height: 400px; } #bot { background: url("img/3.jpg"); height: 500px; } HTML <script type="text/javascript" src="jquery.js"></script> <body> <div id="top" class="prlx"></div> <div id="mid" class="prlx"></div> <div id="bot" class="prlx"></div> </body> JQUERY $('.prlx').each(function() { var obj = $(this); obj.css('background-position', 0); obj.css('background-attachment', 'fixed'); $(window).scroll(function() { var offset = obj.offset(); var yPos = -($(window).scrollTop() - offset.top) / 10; var bgpos = '50% ' + yPos + 'px'; obj.css('background-position', bgpos); }); }); Fui aplicar no meu site https://acweb.net.br/ e o efeito parallax não funcionou embora no inspector dá para ver os cálculos sendo feitos e adicionado às sections Alguém me ajuda a descobrir onde errei? Já estou faz um tempão e não acho! As sections afetadas são as que começam com os textos Fazemos todo o trabalho por você e contato,
  17. juliosertori

    JSON dentro de While Javascript

    Olá galera tudo bem? Tenho um While em Javascript, e preciso dentro dele um JSON, ex: while ( qtdProd <= qtdProdutos ) { { "cod_barras": "SEM GTIN", "codigo_produto": 1, "nome_produto": "Coca-cola lata 350 ml", "ncm": "44071100", "unidade": "UN", "quantidade": 1.00, "valor_unitario": 3.5, "compoe_valor_total": 1 } qtdProd++; } Logicamente assim não funciona, mas não encontrei como inserir corretamente
  18. juliosertori

    Envio de JSON via AJAX POST

    Olá galera tudo bem? Tenho o seguinte JSON: var jsNfe = { "venda": { "identificacao": 1, "comentario": "" }, "documento": { "numero_nf": 663, "natureza_operacao": "Venda de produto de estabelcimento", "cfop": "6101", "numero_serie": 1, "ambiente": 2, "info_complementar": "", "consumidor_final": 1, "operacao_interestadual": 1, "CSC": "GPB0JBWLUR6HWFTVEAS6RJ69GPCROFPBBB8G", "CSCid": "000002" }, "emitente": { "codigo_uf": 31, "razao_social": "empresa", "nome_fantasia": "empresa", "ie": "5464324354", "cnpj": "25447541000155", "crt": 1, "csosn": "101", "logradouro": "ENDERECO", "numero": 444, "complemento": "", "bairro": "CENTRO", "nome_municipio": "Serrania", "cod_municipio_ibge": "3166907", "uf": "MG", "cep": "37143000", "nome_pais": "Brasil", "cod_pais": "1058" }, "destinatario": { "nome": "DESTINAT", "tipo": "j", "cpf_cnpj": "544114552000155", "ie_rg": "54545454", "contribuinte": 1, "logradouro": "ENDERECO, "numero": 665, "complemento": "", "bairro": "centro", "nome_municipio": "cidade", "cod_municipio_ibge": "4112009", "uf": "PR", "cep": "546545645", "nome_pais": "Brasil", "cod_pais": 1058 }, "itens": [ { "cod_barras": "SEM GTIN", "codigo_produto": 1, "nome_produto": "Coca-cola lata 350 ml", "ncm": "44071100", "unidade": "UN", "quantidade": 1.00, "valor_unitario": 3.5, "compoe_valor_total": 1 } ], "frete": { "modelo": 0, "valor": 1.2, "quantidade_volumes": 1.0, "numero_volumes": 1.0, "especie": "TON", "placa": "AZE1757", "uf_placa": "PR", "peso_liquido": 10.0, "peso_bruto": 12.0 }, "responsavel_tecnico": { "cnpj": "454545454444", "contato": "CONT", "email": "EMAIL", "telefone": "TEL" }, "pagamento": { "tipo": "14", "indicacao_pagamento": 0 }, "fatura": { "desconto": 0.00, "total_nf": 3.5 }, "duplicatas": [ { "data_vencimento": "2020-04-21", "valor": 3.5 } ], "tributacao": { "icms": 0.00, "pis": 0.00, "cofins": 0.00, "ipi": 0.00 } }; Já testei diretamente no POSTMAN, ele funciona perfeitamente no sistema, mas não consigo de forma alguma enviar via AJAX POST Vlww
  19. Boa tarde meus amigos, utilizei o modal bootstrap do link modal bootstrap para efetuar edição de um campo texto, consigo fazer o mesmo sem problemas, porém o q ocorre é que já possuo uma tabela onde este campo texto contem em alguns deles cadastros feitos com aspas, aí esta me ocorrendo o problema, pois no caso deste tipo de edição o mesmo carrega o textarea até onde vem uma aspas, depois não completa o texto, tipo, vamos dizer que eu tenho o texto: Imasters é um dos melhores fóruns que temos, merce "um prêmio " bla bla bla bla só esta carregando no textarea para edição: imasters é um dos melhores fóruns que temos, merce Desde já agradeço qq ajuda.
  20. Carcleo

    Problemas em criação de slide personalizado

    Estou fazendo um slide, Nele, tenho 2 problemas que não encontro solução e peço a ajuda de vocês! Problemas que existem agora: A) Quando o slide começa, no arranque, está sem o efeito. Mas só o arranque mesmo, depois tudo sai corretamente e o feito funciona tanto na ida quanto na volta. B) Perceba que eu crio uma UL clone, e, em algumas rodadas a primeira LI dela está sobrepondo um pouco sobre a ultima LI da UL anterior em uma volta. Já em outra volta vai normal e numa outra volta acaba dando um espaço maior entre as LIs. Acho que erro de arredondamento ou de conta! Pode notar no inicio do JS o trecho $(".itens").css('transition','all 1s ease'); Que tecnicamente deveria adicionar o efeito antes mesmo do loop começar. Sendo assim, não consigo ver motivo do arranque não ter o efeito Coloquei no codepen.io para vocês verem os problemas acontecendo!: https://codepen.io/carcleo/pen/RwPGeMN CSS: * { border:0; padding: 0; margin: 0; outline: 0; box-sizing: border-box; } body { display:flex; width: 1040px; margin: 0 auto; justify-content: center; } .slider > * { border:0; padding: 0; margin: 0; outline: 0; box-sizing: border-box; } .slider { position: relative; display: flex; flex-direction: column; align-items: center; width: 100%; height: 130px; border: 0; } .slider > #holder { position: relative; display: flex; overflow: hidden; } .slider > #holder > #uls { position: relative; display: flex; } .slider > #holder > #uls > ul { position: relative; display: flex; } .slider > #holder > #uls > ul > li { position: relative; display: flex; align-items: center; justify-content: center; width: 200px; height: 100px; } .slider > #holder > #uls > ul > li > a { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; } .slider > #holder > #uls > ul > li > a > img { height: 100%; } .slider > #title { position: absolute; align-items: center; justify-content: center; display: none; width: 100px; height: 30px; top: 50px; right: calc(50% - 25px); background: #999; border: 1px solid #ccc; } .slider > #controles { display: flex; align-items: center; justify-content: center; width: 100%; height: 30px; } .slider > #controles > button { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; cursor: pointer; margin: auto 5px; border-radius: 50%; opacity: .2; } .slider > #controles > button:hover { opacity: 1; border: 1x solid #ccc; } HTML: <div class="slider"> <div id="holder"> <div id="uls"> <ul class="itens"> <li><a href=''><img src='img/sites/ctemcasb.png'></a></li> <li><a href=''><img src='img/sites/fielcard.png'></a></li> <li><a href=''><img src='img/sites/funerariasaopedro.png'></a></li> <li><a href=''><img src='img/sites/gasmuriae.png'></a></li> <li><a href=''><img src='img/sites/hotplateprensas.png'></a></li> <li><a href=''><img src='img/sites/mariasvaidosas.png'></a></li> </ul> </div> </div> <span id="title">Pausado</span> <div id="controles"> <button id="back"> < </button> <button id="next"> > </button> </div> </div> <script type="text/javascript" src="scripts/js/jquery.js"></script> JAVASCRIPT $(document).ready( function() { //cria as variáveis NÃO modificáveis; var container = $("div.slider"), holder = $(container).find("div#holder"), uls = $(holder).find("div#uls"), ul = $(uls).find("ul"), lis = $(ul).find("li"), tamanhoLi = Math.round ( $(lis).first().width() ), numeroLis = Math.round ( $(lis).length ), tamanhoUl = Math.round ( tamanhoLi * numeroLis ), controles = $(container).find("div#controles"), span = $(container).find("span#title"), btnVoltar = $(controles).find("button#back"), btnAvancar = $(controles).find("button#next"); //cria as variáveis modificáveis; var numeroSlidesMostra = 4, tempoIntervalo = 2000; //determina a largura da div que abrigará as UL's. $(holder).width(numeroSlidesMostra * tamanhoLi); //determina a largura das ULs partindo do produto entre a largura de cada LI e a quantidade de LI's $(ul).width(tamanhoUl); //acresenta efeito de transição na UL $(".itens").css('transition','all 1s ease'); //fazendo um clone no final da da div de ULs $(ul).clone().appendTo(uls); //função avançar function avancar () { $(".itens").each (function() { console.log ( Math.round ( $(this).position().left ) ); if ( Math.round ( $(this).position().left ) <= -Math.round ( $(ul).width() ) ) $(this).css({ "transition" : "none", "left" : "+=" + ( ( 2 * tamanhoUl ) - tamanhoLi ) }) ; else $(this).css({ "transition" : "all 1s ease", "left" : "-=" + tamanhoLi }) ; }); } //função voltar function voltar () { $(".itens").each (function() { console.log ( Math.round ( $(this).position().left ) ); if ( Math.round ( $(this).position().left ) >= Math.round ( $(holder).width() ) ) $(this).css({ "transition" : "none", "left" : "-=" + ( ( 2 * tamanhoUl ) - tamanhoLi ) }) ; else $(this).css({ "transition" : "all 1s ease", "left" : "+=" + tamanhoLi }) ; }); } //código do onClick no botão avancar btnAvancar.click ( function (e) { clearInterval(loop); avancar(); loop = setInterval( avancar, tempoIntervalo); }); //código do onClick no botão voltar btnVoltar.click ( function (e) { clearInterval(loop); voltar(); loop = setInterval( avancar, tempoIntervalo); }); //dispara o loop na função avançar var loop = setInterval( avancar, tempoIntervalo ); //para e reinicia o loop ao passar/retirar o mouse sobre o slide holder.mouseover(function(){ clearInterval(loop); //mostra a mensagem span.css("display", "flex"); }).mouseout(function(){ loop = setInterval( avancar, tempoIntervalo ); //esconde a mensagem span.css("display", "none"); }); })
  21. gersonab

    Atualizar o select após cadastro sem refresh

    Boa tarde, gostaria da ajuda de vcs, tenho um select option que busca os dados no bd, logo após este tenho um botão onde abro uma janela modal para incluir mais opções a este select caso necessite, com isso faço um cadstro no bd sem dar refresh na página, isto pq já tenho itens inseridos nos demais inputs, o que eu preciso é que após o cadastro este select option seja atualizado sem o refres da página. segue o código. <select id="location" name="reup" > <option value="">item</option> <?php aqui vem os demais option com a busca no bd ?> </select> Jquery $('#insert').click(function(e){ e.preventDefault(); var nomer = $('#nomer').val(); ..... var obsr = $('#obsr').val(); $.post('insreu.php', { nomer:nomer, ..... obsr:obsr }, function(resposta){ if(resposta == 1){ $('input, textarea').val(''); $('#reup').append(e); alert('Cadastrado com sucesso.'); }else { alert(resposta); } }); }); Desde já agradeço.
  22. Carcleo

    setInterval não para após restartado

    Estou tentando criar um slideshow mas personalizado sem depender de biblioteca de terceiros (salvo, jQuery); O objetivo é: A) O slide rodar interminavelmente. B) Ao passar o mouse no slide, ele deve parar; C) Ao deixar o slide, ele deve continuar rodando de onde parou! D) AQUI ESTÁ O PROBLEMA => Ao passar o mouse novamente o interval deve parar. Mas não está parando, function intervalo () { $(".slider > #next").click (); } interval = setInterval(intervalo,4000); $(".slider > ul > li").mouseover(function(){ clearInterval(interval); }).mouseout(function(){ interval = setInterval(intervalo,4000); }); $(".slider > #back").click ( function(){ var liMover = $('.slider ul li:last-of-type'); // copia o conteudo da última $('slider ul li:last-of-type').remove(); // remove a última $(liMover).insertBefore('.slider ul li:first-of-type'); // insere antes da primeira }); $(".slider > #next").click ( function(){ var liMover = $('.slider ul li:first-of-type'); // copia o conteudo da primeira $('.slider ul li:first-of-type').remove(); // remove a primeira $(liMover).insertAfter('.slider ul li:last-of-type'); // insere depois da última }); * { margin: 0; padding: 0; } body { display: flex; width: 1000px; margin: 0 auto; } .slider { position: relative; display: flex; flex-direction: column; width: 1000px; height: 150px; overflow: hidden; border: 1px solid #000; } .slider > ul { display: flex; flex-wrap: wrap; width: 5000px; } .slider > ul > li { display: flex; width: 500px; height: 150px; } .slider > button { position: absolute; display: flex; justify-content: center; top: calc(45% - 15px); width: 30px; height: 30px; opacity: .2 } .slider > button:hover { opacity: 1; cursor: pointer; } .slider > button#back { left: 10px; } .slider > button#next { right: 10px; } <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="slider"> <ul> <li> Slide 1 </li> <li> Slide 2 </li> <li> Slide 3 </li> <li> Slide 4 </li> </ul> <button id="back"> BACK </button> <button id="next"> NEXT </button> </div> O que estará errado!?
  23. Carcleo

    Efeito em insertAfter

    Tenho um botão, que pega a primeira li da ul e joga ela para a ultima posição ininterruptamente e assim eu faço um efeito de slideshow. HTML: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="slider"> <ul> <li> Slide 1 </li> <li> Slide 2 </li> <li> Slide 3 </li> <li> Slide 4 </li> </ul> <button id="back"> BACK </button> <button id="next"> NEXT </button> </div> CSS: * { margin: 0; padding: 0; } body { display: flex; width: 1000px; margin: 0 auto; } .slider { position: relative; display: flex; flex-direction: column; width: 1000px; height: 200px; overflow: hidden; border: 1px solid #000; } .slider > ul { display: flex; flex-wrap: wrap; width: 5000px; } .slider > ul > li { display: flex; justify-content: center; width: 500px; height: 150px; margin: 10px; } .slider > ul > li:hover { cursor: crosshair; } .slider > button { position: absolute; display: flex; justify-content: center; top: calc(45% - 15px); width: 30px; height: 30px; opacity: 0.2; } .slider > button:hover { opacity: 1; cursor: pointer; } .slider > button#back { left: 10px; } .slider > button#next { right: 10px; } .animacao { animation-duration: 4s; animation-name: identifier; } @keyframes identifier { 0% { right: 0; } 50% { right: 50%;} 75% { right: 75%; } 100% { right: 100%; } } JQUERY: function intervalo () { $(".slider > #next").click (); } var interval = setInterval(intervalo,4000); $(".slider > ul > li") .mouseover(function(){ clearInterval(interval); }) .mouseout(function(){ interval = setInterval(intervalo,4000); }) .addClass("animacao"); $(".slider > #back").click ( function(){ var liMover = $('.slider ul li:last-of-type'); // copia o conteudo da última $(liMover).insertBefore('.slider ul li:first-of-type'); // insere antes da primeira }); $(".slider > #next").click ( function(){ var liMover = $('.slider ul li:first-of-type'); // copia o conteudo da primeira $(liMover).insertAfter('.slider ul li:last-of-type'); // insere depois da última }); Tudo funciona bem. Mas estou tentando adicionar um efeito de transição tipo quando as lis mudarem de posição, elas correrem da direita para a esquerda em vez de aparecerem abruptamente. Será que tem como?
  24. weltonmatos

    Pop Up não fecha

    Estou instalando na plataforma Tray uma Pop Up de saída que surge quando o usuário leva o cursor pra barra de navegação. A pop aparece. O que não funciona é o botão fechar. function stick_close() { $('.stick_container').fadeOut(function() { $(this).remove(); }); $('.stick_block_layer').fadeOut(function() { $(this).remove(); }); $.removeData( document.body, "stick_var" ); } $.stick_close = function() { stick_close(); } <div id="modal-newsletter" style="display:none;" class="stick_popup"> <div class="stick_close" onclick="$.stick_close()">X</div> <div class="stick_content"> <h1>Teste</h1> </div> </div>
  25. granderodeo

    Abrir modal relativa ao id do pedido

    Tenho a página pedidos.php, que recebe todos os pedidos que foram feitos no site nessa página tem informações com ID do pedido, ID do usuário, Endereço etc. Fiz um botão `Produtos` para que quando o ADM clique, abra uma modal vinda de outra página `modalbox.php`, com os produtos pedidos referentes aquele pedido. Por exemplo Pedido nº 833 ao lado dele terá um botão `Produtos` e quero que quando abrir a modal venha somente os produtos pedidos pelo 833. Com o código que tenho até o momento a modal abre, mas não mostra os produtos. pedidos.php <!-------------------------------- PEDIDOS -------------------------> <div class="table-responsive mt-2"> <table class="table table-bordered table-striped text-center"> <thead> <tr> <td colspan="9"> <h4 class="text-center text-info m-0">Pedidos realizados</h4> </td> </tr> <tr> <th class="text-center">ID do pedido</th> <th class="text-center">Nome do cliente</th> <th class="text-center">E-mail</th> <th class="text-center">Endereço</th> <th class="text-center">Número da casa</th> <th class="text-center">Valor</th> <th class="text-center">ID cliente</th> <th class="text-center">Situação</th> <th class="text-center">Produtos</th> </tr> </thead> <tbody> <?php require 'conexao_pedidos.php'; $stmt = $conn->prepare("SELECT * FROM orders"); $stmt->execute(); $result = $stmt->get_result(); while($row = $result->fetch_assoc()): ?> <tr> <td> <?= $row['order_id'] ?></td> <!-- ID do pedido --> <td> <?= $row['order_name'] ?></td> </td> <td><?= $row['order_email'] ?> </td> <td> <?= $row['order_endereco'] ?> </td> <td> <?= $row['order_numero'] ?> </td> <td>R$<?= $row['valor_total'] ?></td> <td><?= $row['id_usuario'] ?> </td> <!---- BOTÃO PARA ABRIR MODAL COM OS PRODUTOS ----> <td> <a class="btn btn-danger pull-right" data-toggle="modal" href="#myModal" id="modellink" data-client="<?= $row['order_id'] ?>">Produtos</a> <div class="modal-container"></div> <!----FIM BOTÃO PARA ABRIR MODAL COM OS PRODUTOS ----> </tr> <?php endwhile; ?> </tbody> </table> </div> <!----- JQUERY PARA ABRIR MODAL -----> <script type="text/javascript"> $(document).ready(function(){ var order_id = $(this).attr("data-client"); var url = "modalbox.php?order_id=" + order_id; $_post(url,{ order_id = order_id, }, jQuery('#modellink').click(function(e) { $('.modal-container').load(url,function(result){ $('#myModal').modal({show:true}); }); }); }); </script> modalbox.php <div id="myModal" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> </div> <div class="modal-body"> <div class="table-responsive mt-2"> <table class="table table-bordered table-striped text-center"> <thead> <tr> <td colspan="8"> <h4 class="text-center text-info m-0">Produtos dos pedidos</h4> </td> </tr> <tr> <th>ID do pedido</th> <th>ID cliente</th> <th>ID produto</th> <th>Quantidade</th> </tr> </thead> <tbody> <?php extract($order_id); if (isset($_GET['order_id'])) { $order_id = $_GET['order_id']; } else { die("ERRO: ID não definido."); } require 'conexao_pedidos.php'; $stmt = $conn->prepare("SELECT * FROM orders_items WHERE order_id = '$order_id'"); $stmt->execute(); $result = $stmt->get_result(); while($row = $result->fetch_assoc()): ?> <tr> <td> <?= $row['order_id'] ?> </td> <td> <?= $row['id_usuario'] ?></td> </td> <td> <?= $row['product_id'] ?> </td> <td> <?= $row['quantity'] ?> </td> <!------- FIM ITEM REMOVER DO CARRINHO -------> </tr> <?php endwhile; ?> </tbody> </table> </div> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> <button type="button" class="btn btn-primary">Save</button> </div> </div> </div> </div>
×

Informação importante

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