Ir para conteúdo
Fórum Script Brasil
  • 0

Tabela PHP


AlexandreNSilva

Pergunta

Boa tarde!

galera estou precisando de uma ajuda.

estou gerando uma tabela atravez de um select no MySQL em PHP, e precisava que uma das colunas dessa tabela fosse atualizada com as horas em tempo real.

segue um exemplo de como esta o codigo:

<script>

            var contador = 100;
            var i=0;
            var intervalo = setInterval('funcao()',1000);
            function funcao()
            {
                for(;i <= contador;)
                {
                    if(i == 100)
                    {
                        i = 0;
                    }
                    document.getElementById('txttimer').value = (i);
                    // document.write(i);
                    i++;
                    break;
                }
            }

</script>

<?php

    $campanha = $_GET['campanha'];
    
    include "conexao_customer.php";
    $sql="
        SELECT
            INDICE,
            TX_CAMPANHA,
            TX_OPERADOR,
            TX_NOME_OPERADOR,
            TX_STATUS_FINAL
        FROM
           NOME DA TABELA
        WHERE
            DATEDIFF(DAY, CONVERT(DATETIME, TX_DATA_CONTATO,103), GETDATE())=0
            AND TX_CAMPANHA = '".$campanha."'";

    $res = mssql_query($sql);
    $num_rows = mssql_num_rows($res);
    
    echo "<thead><tr><th scope='col'>Indice</th><th scope='col'>Campanha</th><th scope='col'>Id Operador</th><th scope='col'>Nome Operador</th><th scope='col'>Status Final</th><th scope='col'>Tempo</th></tr></thead><tbody>";
    for($j=0;$j<$num_rows;$j++)
    {
        $row = mssql_fetch_array($res);
        echo "<tr>";
        echo "<th scope='row'>".$row['INDICE']."</th>";
        echo "<td>".$row['TX_CAMPANHA']."</td>";
        echo "<td>".$row['TX_OPERADOR']."</td>";
        echo "<td>".$row['TX_NOME_OPERADOR']."</td>";
        echo "<td>".$row['TX_STATUS_FINAL']."</td>";
        echo "<td'>".txttimer."</td>"; #Essa coluna teria que mostrar as horas atuais em tempo real
    }
            #echo "</tbody>";
?>

 

#INDEX.PHP

<!DOCKTYPE html>
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="stylesheets.css">
        <link rel="stylesheet" href="Bootstrap/bootstrap-4.1.3-dist/css/bootstrap.min.css">
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
        <script type="text/javascript" src="micoxAjax.js"></script>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
        <script src="Bootstrap/bootstrap-4.1.3-dist/js/bootstrap.min.js"></script>
        <script src="Bootstrap/bootstrap-4.1.3-dist/js/bootstrap.js"></script>
        
        
        <script>
            function changeCampanha()
            {
                ajaxGet('load_VendasAuditadas.php?campanha='+document.getElementById('changeCampanha').value, document.getElementById('venda_auditada'), true);
            }

            function selectLine()
            {   
                var tabela = document.getElementById("venda_auditada");
                var linhas = tabela.getElementsByTagName("tr");

                for(var i = 0; i < linhas.length; i++)
                {
                    var linha = linhas;
                    linha.addEventListener("click", function()
                    {
                        selLinha(this, false); //Selecione apenas um 
                        //selLinha(this, true); //Selecione quantos quiser
                        
                    });
                }
                
                function selLinha(linha, multiplos)
                {
                    if(!multiplos)
                    {
                        var linhas = linha.parentElement.getElementsByTagName("tr");
                        for(var i = 0; i < linhas.length; i++)
                        {
                            var linha_ = linhas;
                            linha_.classList.remove("selecionado");    
                        }
                    }
                    linha.classList.toggle("bg-info");
                    //linha.classList.toggle("selecionado");
                }
            }

        </script>
    </head>
    <body>
        <div class="container">
            <div class="col-md-2 col-xs-2 col-sm-2">
                <div class="row">                    
                    <div class="sidebar">
                        <label id="lbchangeCampanha">Campanha</label>
                        <select class="form-control" id="changeCampanha" onchange="changeCampanha()">
                            <option value="SELECIONE:">SELECIONE:</option>
                            <option value="VIRGEM">VIRGEM</option>
                            <option value="ADEQUACAO">ADEQUACAO</option>
                            <option value="ACOMPANHAMENTO">ACOMPANHAMENTO</option>
                            <option value="OS CORREIO">OS CORREIO</option>
                        </select>
                    </div>
                    <div class="row">

                    </div>
                        
                </div>
            </div>        
            <br><br>
            <label id="lbvenda_auditada">Venda Auditada</label>
                    
                <table id="venda_auditada" class="table table-hover" onclick="selectLine()">
                    <div class="col-md-auto">
                        
                    </tr>
                    </tbody>
                    </div>
                </table>
        
        </div>
        
    </body>
    <footer></footer>
</html>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

depois de muita pesquisa, consegui resolver meu problema.

segue o código:

************************

//Inicio Arquivo TabelaAuditoria.php
<script>
var temp;
var timer;
function filaAuditoria(id){
    var stop = id;
    var tabela = '#tabelaDados';
    var banco = 'ScriptSQL.php'
    var dados = 'campanha='+document.getElementById('fitroCampanha').value+'&supervisor='+document.getElementById('filtroSupervisor').value;
    if(stop==1)
    {
        clearInterval(timer);
        clearInterval(temp);
        console.log('stop: '+ stop);
        stop = 0;
    }
    timer = setInterval(() => {
        ajax(tabela, banco, dados);
    }, 1000);
    temp = setInterval(() => {
        var TotalId = '#TotalFilaEspera';
        var TotalBanco = '../sql/sqlTotalFilaAuditoria.php';
        var totalDados = dados+'&solic=1';
        ajaxTempos(TotalId,TotalBanco,totalDados);
}, 1000);
</script>

//Fim do Arquivo TabelaAuditoria.php

//Inicio do arquivo Script.js
#AJAX
function ajax(tabela,banco,dados){
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            document.querySelector(tabela).innerHTML = this.responseText;
        }
    };
    xhttp.open("GET", banco+'?'+dados, true);
    xhttp.send();
};

function ajaxTempos(tabela,banco,dados){
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            var resultado = this.responseText;
            $(tabela).val(resultado);
        }
    };
    xhttp.open("GET", banco+'?'+dados, true);
    xhttp.send();
};
// Fim do arquivo Script.js

//Inicio Arquivo ScriptSQL.php

<?php

    include "../conexoes/conexao_ambiente121.php";
    $campanha=$_GET['campanha'];
    $supervisor=$_GET['supervisor'];

    if($campanha != "")
    {
        $filtroCampanha=" AND CAMPANHA LIKE '%".$campanha."%'";
    }
    else
    {
        $filtroCampanha = "";
    }

    if($supervisor != "")
    {
        $filtroSupervisor=" AND NOME_SUPERVISOR LIKE '%".$supervisor."%'";
    }
    else
    {
        $filtroSupervisor = "";
    }
    $total = 0;
    /* Parametros do farol
    1 <= 0.00138888888888889 == 00:02:00
    2 <= 0.00416666666666667 == 00:06:00
    3 >  0.00416666666666667 == 00:06:00
    */
    $script = $dbh->prepare("SELECT ID, NOME_OPERADOR,INDICE_CUSTOMER [INDICE], CAMPANHA, NOME_SUPERVISOR, CONVERT(VARCHAR(8), GETDATE()-INICIO_FILA, 108) [Tempo_Espera], CASE WHEN CAST(GETDATE()-INICIO_FILA AS FLOAT) <= '0.00138888888888889' THEN 1 WHEN CAST(GETDATE()-INICIO_FILA AS FLOAT) <= '0.00416666666666667' THEN 2 ELSE 3 END Farol, REPROVA FROM AUDITORIA_VENDAS.DBO.CONTROLE_FILA_AUDITORIA WHERE DATEDIFF(D, INICIO_FILA, GETDATE()) = 0 AND FLAG_CONTROLE = 0 ".$filtroCampanha."".$filtroSupervisor." ORDER BY REPROVA DESC");
    $script->execute();

    while ($filaAuditoria = $script->fetch())
    {
        $total++;
        if($filaAuditoria['Farol'] == 3)
        {
            $farol = '#FF0000';
        }
        else if($filaAuditoria['Farol'] == 2)
        {
            $farol = '#FFFF00';
        }
        else
        {
            $farol = '#00FF00';
        }
        $modal = $filaAuditoria['ID'];
        echo "<tr>";
            echo "<td name='".$filaAuditoria['ID']."'>".$filaAuditoria['ID']."</td>";
            echo "<td>".$filaAuditoria['INDICE']."</td>";
            echo "<td>".$filaAuditoria['CAMPANHA']."</td>";
            echo "<td>".$filaAuditoria['NOME_SUPERVISOR']."</td>";
            echo "<td>".$filaAuditoria['Tempo_Espera']."</td>"; #<-- Esta coluna sera atualizada a cada segundo
            echo "<td BGCOLOR=".$farol."></td>";
            echo "<td>".$filaAuditoria['REPROVA']."</td>";
            echo "<td><button name='btnAuditar' type='button' data-toggle='modal' data-target='#myModal' onclick='ajaxModal(".$modal.")'>Auditar</button></td>";
        echo "</tr>";
    }
?>

// Fim do arquivo ScriptSQL.php
 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...