Jump to content
ewersonsv

[AJAX] Não atualizar o valor automaticamente (sem refresh na pagina).

Recommended Posts

Olá pessoal estou iniciando o uso do ajax/js, estou fazendo um protótipo de sistema de estoque (onde gera-se uma fatura manualmente);

O PHP ta tudo certo mais o JS não atualizar o valor assim que faz as ações { Adiciona, remover, aumenta/diminuir quantidade }

 

image.thumb.png.89273a56e66a2545d54412076d27be36.png

 

AJAX/JS:

<script type="text/javascript">
    //VARIAVEL:
    var timmer;
    //PESQUISAR:
    function pesquisar(item,saidaid){
        if(item != ''){
            clearTimeout(timmer);
            timmer = setTimeout(function callback(){
                $.ajax({
                    url: '<?php echo base_url('estoque/pesquisar/'); ?>'+item+'/'+saidaid,
                    success: function(response){
                        jQuery('#resultado_pesquisar').html(response);
                    },
                    error: function() {
                        alert("Ocorreu um erro ao carregar os dados.");
                    }
                });
            }, 100);
        }else{
            $('.resultado_pesquisar').css("display", "none");
        }
    }
    //CANCELAR PESQUISAR:
    function cancelar_pesquisar(){
        $('#camp_pesquisar').val('');
        $('#camp_pesquisar').focus();
        $('.resultado_pesquisar').css("display", "none");
        $.ajax.reload();
    }
    //TESTE:


    //ADICIONAR ITEM:
    function adic_item_list(item,saidaid){
        //alert(saidaid);
        if(item != ''){
            clearTimeout(timmer);
            timmer = setTimeout(function callback(){
                $.ajax({
                    data: {'item': item, 'saidaid': saidaid},
                    url: '<?php echo base_url('estoque/adicionar/'); ?>'+item+'/'+saidaid,
                    success: function(response){
                        jQuery('#inner_invoice_area').html(response);
                        $('#camp_pesquisar').val('');
                        $('#camp_pesquisar').focus();
                        $("#produt").ajax.reload();
                        if(data.success == true){
                            setTimeout(function(){
                               location.reload();
                            }, 5000); 
                        }
                    },
                    error: function() {
                        alert("Ocorreu um erro ao carregar os dados.");
                    }
                });
            }, 100);
        }else{
            $('.resultado_pesquisar').css("display", "none");
        }
    }
    $('#adcitem').click(function () {
        $.ajax({
            success: function(data){
                if(data.success == true){
                    setTimeout(function(){
                       location.reload();
                    }, 5000); 
                }
            }
        });
    });

    //ALTERA QUANTIDADE DE ITEM:
    function atualizar_qntd(qntd,item,saidaid){
        clearTimeout(timmer);
        timmer = setTimeout(function callback(){
            var int_val = parseInt(qntd);
            $.ajax({
                url: '<?php echo base_url('estoque/qntd/'); ?>'+int_val+'/'+item,
                success: function(response){
                    jQuery('#inner_invoice_area').html(response);
                    $('#camp_pesquisar').val('');
                    $('#camp_pesquisar').focus();
                    if(data.success == true){
                        setTimeout(function(){
                           location.reload();
                        }, 5000); 
                    }
                },
                error: function() {
                    alert("Ocorreu um erro ao carregar os dados.");
                }
            });
        }, 400);
    }
    //DELETAR ITEM:
    function deletar_item(item,saidaid){
        if(item != ''){
            clearTimeout(timmer);
            timmer = setTimeout(function callback(){
                $.ajax({
                    url:'<?php echo base_url('estoque/deletar/'); ?>'+item+'/'+saidaid,
                    success: function(response){
                        jQuery('#inner_invoice_area').html(response);
                        $('#camp_pesquisar').val('');
                        if(data.success == true){
                            setTimeout(function(){
                               location.reload();
                            }, 5000); 
                        }
                    },
                    error: function() {
                        alert("Ocorreu um erro ao carregar os dados.");
                    }
                });
                $('#camp_pesquisar').focus();
                $("#inner_invoice_area").ajax.reload();
            }, 100);

        }
    }
    $('#dltitem').click(function () {
        $.ajax({
            success: function(data){
                if(data.success == true){
                    setTimeout(function(){
                       location.reload();
                    }, 5000); 
                }
            }
        });
    });

    //ATUALIZAR PAGINA:
    function reflesh(){
        $.ajax({
            success: function(data){
                if(data.success == true){
                    setTimeout(function(){
                       location.reload();
                    }, 5000); 
                }
            }
        });
    }
</script>

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By smashplus
      Olá amigos, sendo breve, apenas gostaria de saber se alguem sabe por onde começo para fazer por exemplo o seguinte:
       
      Existe o usuário 1 e o usuário 2,  quando o usuário 1 insere uma linha no bd, ele manda uma mensagem para o usuário 2, avisando tipo, foi inserido uma linha no bd para o usuário, tipo aqueles popup sabe.
       
      Se alguem puder dar uma luz, tenho noções basicas de php e ajax...
       
      Agradeço se alguem puder dar a direção.
    • By lucasvbl
      <form id="frmDados" name="frmDados" class="form-horizontal" method="post" action="" enctype="multipart/form-data"> <input name="acao" id="acao" type="hidden" value="paginas"> <? if($_idCodigo){ ?> <input name="r" id="r" type="hidden" value="<?=$_idCodigo;?>"> <? } ?> <div class="row"> <div class="col-md-6"> <div class="form-group row"> <label class="col-md-2 col-form-label"> Titulo</label> <div class="col-md-10"> <input class="form-control" autocomplete="off" type="text" name="txtDescricao" id="txtDescricao" value="<?=$_rowDados->C02_DESCRICAO;?>"> </div> </div> </div> <? if($_idCodigo){ ?> <div class="col-md-6"> <div class="form-group row"> <label class="col-md-2 col-form-label"> Link</label> <div class="col-md-10"> <input readonly="readonly" class="form-control" type="text" name="txtLink" id="txtLink" value="pagina.php?p=<?=$_rowDados->C01_ID;?>"> </div> </div> </div> <? } ?> </div> <div class="row"> <div class="col-md-12"> <div class="form-group row"> <label class="col-md-12 col-form-label">Conteúdo</label> <div class="col-md-12"> <textarea class="form-control" name="txtConteudo" id="txtConteudo"> <?=$_rowDados->C04_CONTEUDO;?> </textarea> </div> </div> </div> </div> <div class="col-md-12" style="text-align: center;"> <button class="btn btn-oval btn-success" type="button" id="btGravar">Gravar</button> </div> </form> <script type="text/javascript"> $(function () { $("#btGravar").click(function(){ erros = 0; if(!$("#txtDescricao").val()){ mensagem('mensagemDIV', 'danger', 'Preencha o campo <strong>Título para a página</strong>.', 0, 'txtEntidade'); erros = 1; } if(erros > 0){ return; } off("btGravar"); var formData = $("#frmDados").serialize(); $.ajax({ url: "app.php", type: "POST", data: formData, dataType: "json", success: function (retorno) { if(retorno.status == '1'){ tratarRetorno(retorno); } if(retorno.status == '400'){ tratarRetorno(retorno); } on("btGravar"); return; } }).fail(function (jqXHR, textStatus, error) { console.log(jqXHR.responseJSON); }); return; }); }); $(document).ready(function(){ $("#txtTitulo").focus(); }); </script> Estou com um problema num crud utilizando ajax, ele meio que "corrompe a string"... 
      ENVIO ASSIM
       
      ELE SALVA ASSIM
       
      Não estou utilizando nenhum editor nada, num textarea
      ESSE CODIGO
       
       
       
       
    • By opl12
      Olá Mestres,
      Tenho uma página com comando "input Range" .. é uma barra deslizante... conforme deslisa gera um valor.
       
      o problema, 
      não consigo gravar o valor numa variável PHP,
      Segue html:
      <html> <head> <title> ...::: HOME :::... </title> </head> <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <body> <form method="POST"> <label class="mt-3" for="ciclo">CICLO</label> <input type="range" class="custom-range" value="201901" min="201901" max="201915" step="1" id="ciclo" name="idciclo"> <span>201901</span> </form> <div id="resultado"> </div> <script type="text/javascript"> $("#ciclo").on("change", function(){ var idCiclo = $("#ciclo").val(); $.ajax({ method: "POST", url: "ciclo_inicios.php", data: { 'ciclo': idCiclo }, success: function(retorno){ alert(retorno); } }); }); </script> </body> </html>  
      código php... arquivo "cilo_inicios.php"
      <?php //$valorciclo = isset($_POST['dados']) ? $_POST['dados'] : ''; $valorciclo = $_POST["idciclo"]; echo "$valorciclo"; ?>  
      Sabem o que estou fazendo de errado ?   :/
       
       
       
    • By rxhxtx
      Boa tarde,
      nos meus estudos me deparei com mais um obstaculo,
      estava fazendo um tutorial sobre atualizacao de BD via ajax...
       
      os dados da pagina estao sendo atualizados perfeitamente, porem o PHP nao executa a funcao de colear os dados e atualizar o BD,
      <?php $connection = mysqli_connect('localhost' , 'root' ,'' ,'testes'); if(isset($_POST['user_id'])){ $user_fname = $_POST['user_fname']; $user_lname = $_POST['user_lname']; $user_email = $_POST['user_email']; $user_id = $_POST['user_id']; $result = mysqli_query($connection , "UPDATE `users_full` SET `user_fname`=`$user_fname` , `user_lname`=`$user_lname` , `user_email`= `$user_email` WHERE `user_id`=`$user_id`"); if($result){ echo 'data updated'; } } ?> se eu coloco 
      if(2+2 ==$){  
      e tiro os POST e coloco os valores ex: $user_fname = "carlinhos";
      atualiza, porem se deixo para ele pegar os dados vi post não funciona... so atualiza na pagina, mas o BD fica igual....
       
      qual é o erro? pq nao esta recebendo os POST??
       
      codigo da pagina é esse:
      <?php include 'listaUSUcon.php'; ?> <head></head> <body> <div class="container"> <table class="table"> <thead> <tr> <th>Firstname</th> <th>Lastname</th> <th>Email</th> <th>Action</th> </tr> </thead> <tbody> <?php $table = mysqli_query($connection ,'SELECT * FROM users_full'); while($row = mysqli_fetch_array($table)){ ?> <tr id="<?php echo $row['user_id']; ?>"> <td data-target="user_fname"><?php echo $row['user_fname']; ?></td> <td data-target="user_lname"><?php echo $row['user_lname']; ?></td> <td data-target="user_email"><?php echo $row['user_email']; ?></td> <td><a href="#" data-role="update" data-id="<?php echo $row['user_id'] ;?>">Update</a></td> </tr> <?php } ?> </tbody> </table> </div> <!-- Modal --> <div id="myModal" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <input type="text" id="user_id" class="form-control" readonly> </div> <div class="modal-body"> <div class="form-group"> <label>First Name</label> <input type="text" id="user_fname" class="form-control"> </div> <div class="form-group"> <label>Last Name</label> <input type="text" id="user_lname" class="form-control"> </div> <div class="form-group"> <label>Email</label> <input type="text" id="user_email" class="form-control"> </div> <input type="hidden" id="user_id" class="form-control"> </div> <div class="modal-footer"> <a href="#" id="save" class="btn btn-primary pull-right save">Update</a> <button type="button" class="btn btn-default pull-left" data-dismiss="modal">Close</button> </div> </div> </div> </div> </body> <script> $(document).ready(function(){ // append values in input fields $(document).on('click','a[data-role=update]',function(){ var user_id = $(this).data('id'); var user_fname = $('#'+user_id).children('td[data-target=user_fname]').text(); var user_lname = $('#'+user_id).children('td[data-target=user_lname]').text(); var user_email = $('#'+user_id).children('td[data-target=user_email]').text(); $('#user_fname').val(user_fname); $('#user_lname').val(user_lname); $('#user_email').val(user_email); $('#user_id').val(user_id); $('#myModal').modal('toggle'); }); // now create event to get data from fields and update in database $('#save').click(function(){ var user_id = $('#user_id').val(); var user_fname = $('#user_fname').val(); var user_lname = $('#user_lname').val(); var user_email = $('#user_email').val(); $.ajax({ url : 'listaUSUcon.php', method : 'post', data : {user_fname : user_fname , user_lname: user_lname , user_email : user_email , user_id: user_id}, success : function(response){ // now update user record in table $('#'+user_id).children('td[data-target=user_fname]').text(user_fname); $('#'+user_id).children('td[data-target=user_lname]').text(user_lname); $('#'+user_id).children('td[data-target=user_email]').text(user_email); $('#myModal').modal('toggle'); } }); }); }); </script>  
       
      aquele include (listaUSUcon.php) é referente ao primeiro codigo que postei la em cima..
       
       
      para mim não faz sentido, pois aparentemente nao tem nada errado....
       
      alguem sabe onde estou errando???
       
       
       
       
       
       
       
       
    • By infonet
      Olá pessoal,
      Poderiam me ajudar?
      Preciso enviar o formulário via ajax, porém preciso pegar todos os valor de todos os inputs e excluir o valor de cada linha em três tabela.
      Pode ser que alguma tabela não tenha nenhum valor, mas tem tabela que pode ter 10 valores.
       
      Tentei fazer como estou enviando, mas não consegui...
      Obrigado!
       

      <form name='formResiduo'> <?php $sqlr_end = "SELECT e.idclie FROM tb_end e WHERE NOT EXISTS(SELECT i.idinc FROM tb_inc i WHERE e.idclie = i.idinc) ORDER BY e.idclie ASC"; $querye = $conn->query($sqlr_end); $linhas = $querye->num_rows; while($rowrend = $querye->fetch_assoc()) { $reidclie = $rowrend["idclie"]; if ($linhas == "0") { $linhase = ""; } else { $linhase = $linhas; } ?> <input type='text' name='valor[]' value='<?php echo $reidclie; ?>'> <?php } ?> <?php if ($linhase) { ?> <div class='emCursorD emBlkA' style='position:relative;font-size:14px;font-weight:300;'> <div style='position:absolute;width:calc(100% + 100px);height:100%;left:-10px;'></div> <div class='formImptG' style='border-radius:3px;padding:5px;margin-bottom:20px;'> <label> <div style='position:relative;border-bottom:1px solid #606060;padding-top:10px;margint-top:5px;'><?php echo $linhase; ?></div> </label> </div> </div> <?php } ?> <?php $sqlr_res = "SELECT r.idclir FROM tb_res r WHERE NOT EXISTS(SELECT i.idinc FROM tb_inc i WHERE r.idclir = i.idinc) ORDER BY r.idclir ASC"; $queryr = $conn->query($sqlr_res); $linhas = $queryr->num_rows; while($rowrres = $queryr->fetch_assoc()) { $rridclir = $rowrres["idclir"]; if ($linhas == "0") { $linhasr = ""; } else { $linhasr = $linhas; } ?> <input type='text' name='valor[]' value='<?php echo $rridclir; ?>'> <?php } ?> <?php if ($linhasr) { ?> <div class='emCursorD emBlkA' style='position:relative;font-size:14px;font-weight:300;'> <div style='position:absolute;width:calc(100% + 100px);height:100%;left:-10px;'></div> <div class='formImptG' style='border-radius:3px;padding:5px;margin-bottom:20px;'> <label> <div style='position:relative;border-bottom:1px solid #606060;padding-top:10px;margint-top:5px;'><?php echo $linhasr; ?></div> </label> </div> </div> <?php } ?> <?php $sqlr_his = "SELECT h.idclih FROM tb_his h WHERE NOT EXISTS(SELECT i.idinc FROM tb_inc i WHERE h.idclih = i.idinc) ORDER BY h.idclih ASC"; $queryh = $conn->query($sqlr_his); $linhas = $queryh->num_rows; while($rowrhis = $queryh->fetch_assoc()) { $rhidclih = $rowrres["idclih"]; if ($linhas == "0") { $linhash = ""; } else { $linhash = $linhas; } ?> <input type='text' name='valor[]' value='<?php echo $rhidclih; ?>'> <?php } ?> <?php if ($linhash) { ?> <div class='emCursorD emBlkA' style='position:relative;font-size:14px;font-weight:300;'> <div style='position:absolute;width:calc(100% + 100px);height:100%;left:-10px;'></div> <div class='formImptG' style='border-radius:3px;padding:5px;margin-bottom:20px;'> <label> <div style='position:relative;border-bottom:1px solid #606060;padding-top:10px;margint-top:5px;'><?php echo $linhash; ?></div> </label> </div> </div> <?php } ?> </form> <div class='passar emLineB emCursorP'>Passar</div> <script> $(document).ready(function() { $('.passar').click(function(passar) {     var formdata = new FormData($("form[name='formResiduo']")[0]);     var link = 'sys/incClient.php?teste=ex';      $.ajax({         dataType: 'json',         type: 'POST',         url: link,         data: formdata,         processData: false,         contentType: false,     success: function (result) {         var data = result.split('|');         var rA = data[0];         var rB = data[1];     if(rA == "sucesso") {     alert(rB);     }      return false;     }     }); }); }); </script>
       

      if($_GET['teste']=="ex") {     foreach($_POST['valor'] AS $lines) {          $sqlr = @mysqli_query($conn, "DELETE FROM tb_res WHERE idclir = '$lines'");     $sqle = @mysqli_query($conn, "DELETE FROM tb_end WHERE idclie = '$lines'");     $sqlh = @mysqli_query($conn, "DELETE FROM tb_his WHERE idclih = '$lines'");     }          $arrch = "sucesso"."|".$lines;     echo json_encode($arrch);     exit; }
×

Important Information

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