Ir para conteúdo
Fórum Script Brasil

AlexandreNSilva

Membros
  • Total de itens

    29
  • Registro em

  • Última visita

Sobre AlexandreNSilva

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

AlexandreNSilva's Achievements

0

Reputação

  1. Boa tarde, cara, eu tenho um codigo que pode ser que te ajude. no meu caso eu listo todos os dados um uma tabela, e coloco uma coluna com o checkbox. pos selecionado os check, ele varre a tabela e faz as alterações que eu preciso. tipo assim: tabela para listar as informaçoes: <form method='post' name='myForm' id='myForm' action='../sql/sqlInsertFimdeTurno.php'> <div class="row"> <div class="col-6 col-md-4"> <div class="input-group-prepend"> <span class="input-group-text" id="Campanha">Alterar Status:</span> <select class="form-control" name="filtroStatus"> <?php include '../sql/sqlListaPausa.php';?> </select> </div> </div> </div> <br> <div class="container-fluid"> <div class="table-responsive"> <table class="table table-striped table-sm" name="tabela" id="tabela" metod="get"> <thead> <tr> <th>Login</th> <th>Nome</th> <th>Ambiente</th> <th>Campanha</th> <th>Status</th> <th>Ultima Alteracao</th> <th>Alterar Status?</th> </tr> </thead> <tbody id="dadosTabela"></tbody> </table> </div> <div class="btn-group"> <button type="submit" class="btn btn-sm btn-outline-secondary">Salvar</a> </div> </div> </form> script: "sqlInsertFimdeTurno.php <?php include "../conexoes/conexao_ambiente121.php"; $ident = $_POST["ident"]; $status = $_POST["filtroStatus"]; if($status == '') { echo "<script>alert('Favor selecionar um status!');history.back()</script>"; } else { if(isset($_POST["ident"])) { $add=0; echo "<script>console.log(".$ident.")</script>"; foreach($ident as $fimDeTurno) { $script = $dbh->prepare("INSERT INTO [Auditoria_Vendas].[dbo].[TABELA_PAUSAS] SELECT LOGIN_AUDITOR, ".$status."[COD_STATUS], CAMPANHA, AMBIENTE, GETDATE() DATA, NOME_AUDITOR,NULL DATA_FIM FROM [Auditoria_Vendas].[dbo].[STATUS_AUDITOR] WHERE DATEDIFF(DAY, DATA_INICIO, GETDATE()) = 0 AND LOGIN_AUDITOR = SUBSTRING('".$ident[$add]."',1,4) AND AMBIENTE = SUBSTRING('".$ident[$add]."',6,11) AND CAMPANHA = SUBSTRING('".$ident[$add]."',18,20)"); if($script->execute()) { $add=$add+1; } } if($add > 0) { echo "<script>alert('Foram atualizados ".$add." auditores!');document.location='../table/tableListaStatusAuditor.php'</script>"; } else { echo "<script>alert('Erro ao adicionar os auditores .Favor tentar novamente!');history.back()</script>"; } } else { echo "<script>alert('Favor selecionar ao menos um auditor para colocar em status de Final de Turno!');history.back()</script>"; } Pagia sqlListaAuditores.php <?php include "../conexoes/conexao.php"; $campanha=$_GET['campanha']; $acao=$_GET['acao']; $script = $dbh->prepare("SELECT LOGIN_AUDITOR,UPPER(NOME_AUDITOR) NOME_AUDITOR ,AMBIENTE,CAMPANHA ,A.COD_STATUS,B.DESCRICAO STATUS, CASE WHEN DATA_ALTERACAO IS NULL THEN DATA_INICIO ELSE DATA_ALTERACAO END ULTIMA_ALTERACAO FROM [Auditoria_Vendas].[dbo].[STATUS_AUDITOR] as a LEFT JOIN [Auditoria_Vendas].dbo.LISTA_DE_PAUSA AS B ON A.COD_STATUS = B.CODIGO WHERE DATEDIFF(D, DATA_INICIO, GETDATE()) = 0 AND CAMPANHA LIKE '%".$campanha."%' "); $script->execute(); $numRows = count($script); while ($listaAuditores = $script->fetch()) { echo "<tr>"; echo "<td name='".$listaAuditores['LOGIN_AUDITOR']."'>".$listaAuditores['LOGIN_AUDITOR']."</td>"; echo "<td>".$listaAuditores['NOME_AUDITOR']."</td>"; echo "<td>".$listaAuditores['AMBIENTE']."</td>"; echo "<td>".$listaAuditores['CAMPANHA']."</td>"; echo "<td>".$listaAuditores['STATUS']."</td>"; echo "<td>".$listaAuditores['ULTIMA_ALTERACAO']."</td>"; if($acao==1) { echo "<td><input type='checkbox' class='form-check-input' name='ident[]' value='".$listaAuditores['LOGIN_AUDITOR']."|".$listaAuditores['AMBIENTE']."|".$listaAuditores['CAMPANHA']."'></td>"; } echo "</tr>"; } ?>
  2. Preciso de uma ajuda, estou fazendo um tela de login, com validação através do LDAP, após a conexão eu faço um direccionamento para outra pagina mandando o nome do usuário via GET. porem eu precisava que o envio fosse via POST, andei pesquisando na net já faz um tempo e ate agora não consegui uma solução. alguém tem alguma dica para me dar? Segue o trecho de código. ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION,7); ldap_set_option($ds, LDAP_OPT_REFERRALS,0); if ($ds) { echo "<script>console.log('Conectado ao LDAP...')</script>"; // binding to ldap server $ldapbind = ldap_bind($ds, $ldaprdn, $ldappass); // verify binding echo("<script>console.log('msg:'".ldap_error($ds)."')</script>"); echo("<script>console.log('msg:'".$ldapbind."')</script>"); if ($ldapbind) { echo "<script>console.log('Conexão efetuada com sucesso...')</script>"; header("Location: ../menu.php?login=".$usuario); } else { echo "<script>console.log('Falha na conexão com o AD/LDAP...')</script>"; echo "<script>alert('Login e ou senha invalido!\\nFavor tentar novamente');history.back()</script>"; }
  3. Só uma duvida, você esta colocando os valores em ordem crescente ou aleatório? porque no código citado acima, ele vai armazenar a posição do maior elemento quando o mesmo for localizado dentro do vetor for(i=0; i<tam; i++) { if (vet[i] > maior) { maior = vet[i]; po=i; } }
  4. hum..no access, bom você pode utilizar uma macro para fazer isso, tanto no excel quanto no access, a logica é mais ou menos essa que eu postei
  5. bom dia!, poste os códigos para que possamos analisar
  6. Boa tarde! tem como você postar o código para que nos possamos analisar
  7. é..eu esqueci de colocar a coluna t.data_exame dentro do select. SELECT DATE_FORMAT(d.data_exame, %d) AS dia, t.id_auth, COUNT(t.id_auth) AS TOTALFROM ( SELECT DISTINCT data_exame FROM tbl_medreq_hospital_exame WHERE data_exame BETWEEN '2019-11-02' AND '2019-11-04' ) AS d LEFT JOIN (SELECT id_auth, data_exame FROM tbl_medreq_hospital_exame WHERE id_auth = '00.0000.0000') AS t ON d.data_exame = t.data_exameGROUP BY t.data_exameLIMIT 0,30
  8. Bom dia! você pode colocar uma formula para contabilizar somente quanto tiver valores, ou colocar uma tabela dinamica, e colocar um filtro para os registros que tiverem valores. PRODUTO TAMANHO PP TAMANHO P TAMANHO M TOTAL ESTAMPA 1 0 0 0 0 ESTAMPA 2 0 3 3 6 ESTAMPA 3 5 3 1 9 TOTAL (Vários itens) Rótulos de Linha Soma de TAMANHO PP Soma de TAMANHO P Soma de TAMANHO M ESTAMPA 2 0 3 3 ESTAMPA 3 5 3 1 Total Geral 5 6 4 na tabela dinâmica você pode dimensionar da maneira que você preferir
  9. Bom dia! eu tenho um script que faz exatamente isso, da uma olhada e uma adaptada nele conforme a sua necessidade. --************************************************************************************ -- PASSO1: PROCEDIMENTO PARA TRATAMENTO ( IMPORTA AS OSS PARA BASE ) --************************************************************************************ PRINT'CRIA TABELA TMP' PRINT CONVERT(VARCHAR(10), GETDATE(), 103) + ' ' + CONVERT(VARCHAR(08), GETDATE(), 108) IF EXISTS (SELECT NAME FROM TEMPDB.SYS.TABLES WHERE NAME LIKE '%#PERFORMANCE_TMP%') DROP TABLE #PERFORMANCE_TMP CREATE TABLE #PERFORMANCE_TMP( [NOME AGENTE] VARCHAR(MAX) NULL , [ID AGENTE] VARCHAR(MAX) NULL , [N¨²MERO DE CHAMADAS ATENDIDAS] VARCHAR(MAX) NULL , [TEMPO M¨¦DIO DE CONVERSA] VARCHAR(MAX) NULL , [TEMPO M¨¦DIO OCUPADO] VARCHAR(MAX) NULL , [TEMPO M¨¦DIO ACW] VARCHAR(MAX) NULL , [TEMPO TOTAL LOGADO] VARCHAR(MAX) NULL , [TEMPO TOTAL DE CONVERSA] VARCHAR(MAX) NULL , [TEMPO TOTAL OCIOSO] VARCHAR(MAX) NULL , [TEMPO TOTAL ACW] VARCHAR(MAX) NULL , [TEMPO TOTAL TOCANDO] VARCHAR(MAX) NULL , [TEMPO TOTAL EM PAUSA] VARCHAR(MAX) NULL , [TEMPO DE PAUSA AUTOMATICO] VARCHAR(MAX) NULL , [TEMPO DE PAUSA INTERVALO] VARCHAR(MAX) NULL , [TEMPO DE PAUSA PARTICULAR] VARCHAR(MAX) NULL , [TEMPO DE PAUSA PAUSA 10] VARCHAR(MAX) NULL , [TEMPO DE PAUSA TREINAMENTO] VARCHAR(MAX) NULL , [TEMPO DE PAUSA FEEDBACK] VARCHAR(MAX) NULL , [TEMPO DE PAUSA APOIO/CEDIDO] VARCHAR(MAX) NULL , [TEMPO DE PAUSA AMBULAT?RIO] VARCHAR(MAX) NULL , [TEMPO DE PAUSA PRODUCT/OUTBOUND] VARCHAR(MAX) NULL , [TEMPO DE PAUSA PROBLEMAS T?CNICOS] VARCHAR(MAX) NULL , [N¨²MERO DE CHAMADAS CURTAS] VARCHAR(MAX) NULL , [N¨²MERO DE CHAMADAS TRANSFERIDAS] VARCHAR(MAX) NULL , [N¨²MERO DE CHAMADAS INTERNAS] VARCHAR(MAX) NULL , [N¨²MERO DE CHAMADAS REALIZADAS] VARCHAR(MAX) NULL , [TEMPO M¨¦DIO DAS CHAMADAS REALIZADAS] VARCHAR(MAX) NULL , [PORCENTAGEM TEMPO PRODUTIVO] VARCHAR(MAX) NULL ) ON [PRIMARY]; --============================================================== -- CRIA TABELA TEMPORÁRIA PARA PEGAR O NOME DO ARQUIVO MAILING --============================================================== IF EXISTS (SELECT NAME FROM TEMPDB.SYS.TABLES WHERE NAME LIKE '%#BASE_PERFORMANCE_TMP%') DROP TABLE #BASE_PERFORMANCE_TMP CREATE TABLE #BASE_PERFORMANCE_TMP ( PERFORMANCE VARCHAR(150), CONTADOR INT IDENTITY ) DECLARE @PASTA VARCHAR(MAX) SET @PASTA = 'MASTER.SYS.XP_CMDSHELL ''DIR \\SERVER-ATLAS\motiva\planejamento\MIS\RELATÓRIOS\Claro\Renta\2018\'+@MESREF+'\Performance\*.txt /B''' -- select * from #BASE_ANALITICO_TMP INSERT INTO #BASE_PERFORMANCE_TMP EXEC(@PASTA) DELETE FROM #BASE_PERFORMANCE_TMP WHERE PERFORMANCE IS NULL -- EXECUTA LOOPING QUE IMPORTA OS REGISTROS PRINT'CRIA TABELA TMP DE INSERÇÃO' PRINT CONVERT(VARCHAR(10), GETDATE(), 103) + ' ' + CONVERT(VARCHAR(08), GETDATE(), 108) IF OBJECT_ID('TEMPDB..#PERFORMANCE_CLARO_RENTA') IS NOT NULL BEGIN DROP TABLE #PERFORMANCE_CLARO_RENTA END CREATE TABLE #PERFORMANCE_CLARO_RENTA( [NOME AGENTE] VARCHAR(MAX) NULL , [ID AGENTE] INT NULL , [N¨²MERO DE CHAMADAS ATENDIDAS] INT NULL , [TEMPO M¨¦DIO DE CONVERSA] INT NULL , [TEMPO M¨¦DIO OCUPADO] INT NULL , [TEMPO M¨¦DIO ACW] INT NULL , [TEMPO TOTAL LOGADO] INT NULL , [TEMPO TOTAL DE CONVERSA] INT NULL , [TEMPO TOTAL OCIOSO] INT NULL , [TEMPO TOTAL ACW] INT NULL , [TEMPO TOTAL TOCANDO] INT NULL , [TEMPO TOTAL EM PAUSA] INT NULL , [TEMPO DE PAUSA AUTOMATICO] INT NULL , [TEMPO DE PAUSA INTERVALO] INT NULL , [TEMPO DE PAUSA PARTICULAR] INT NULL , [TEMPO DE PAUSA PAUSA 10] INT NULL , [TEMPO DE PAUSA TREINAMENTO] INT NULL , [TEMPO DE PAUSA FEEDBACK] INT NULL , [TEMPO DE PAUSA APOIO/CEDIDO] INT NULL , [TEMPO DE PAUSA AMBULAT?RIO] INT NULL , [TEMPO DE PAUSA PRODUCT/OUTBOUND] INT NULL , [TEMPO DE PAUSA PROBLEMAS T?CNICOS] INT NULL , [N¨²MERO DE CHAMADAS CURTAS] INT NULL , [N¨²MERO DE CHAMADAS TRANSFERIDAS] INT NULL , [N¨²MERO DE CHAMADAS INTERNAS] INT NULL , [N¨²MERO DE CHAMADAS REALIZADAS] INT NULL , [TEMPO M¨¦DIO DAS CHAMADAS REALIZADAS] INT NULL , [PORCENTAGEM TEMPO PRODUTIVO] VARCHAR(MAX) NULL , [DATA_DA_ACAO] datetime , SKILL VARCHAR(MAX) NULL , DATA_IMPORTACAO DATETIME ) ON [PRIMARY]; DECLARE @I INT, @F INT, @ARQV VARCHAR(250) SET @I = (SELECT MIN(CONTADOR) FROM #BASE_PERFORMANCE_TMP) SET @F = (SELECT MAX(CONTADOR) FROM #BASE_PERFORMANCE_TMP) WHILE (@I <= @F) BEGIN SET @ARQV = (SELECT PERFORMANCE FROM #BASE_PERFORMANCE_TMP WHERE CONTADOR = @I) EXEC (' BULK INSERT #PERFORMANCE_TMP FROM ''\\SERVER-ATLAS\MOTIVA\planejamento\MIS\RELATÓRIOS\Claro\Renta\2018\'+@MESREF+'\Performance\'+@ARQV+''' WITH(FIRSTROW =2, CODEPAGE = 1252, FIELDTERMINATOR = ''\t'', ROWTERMINATOR = ''0x0d'') ') INSERT INTO #PERFORMANCE_CLARO_RENTA SELECT * , convert(datetime, substring(LEFT(RIGHT(@ARQV, 12), 8),1,2)+'/'+substring(LEFT(RIGHT(@ARQV, 12), 8),3,2)+'/'+substring(LEFT(RIGHT(@ARQV, 12), 8),5,4), 103) [DATA_DA_ACAO] , SUBSTRING(REPLACE(@ARQV, 'DATA_SKILL', ''),1, LEN(REPLACE(@ARQV, 'DATA_SKILL', ''))-13)[SKILL] , GETDATE() [DATA_IMPORTACAO] FROM #PERFORMANCE_TMP SET @I = @I+1 END PRINT'INSERE OS REGISTROS NA TABELA TEMP FINAL' PRINT CONVERT(VARCHAR(10), GETDATE(), 103) + ' ' + CONVERT(VARCHAR(08), GETDATE(), 108) INSERT INTO [Claro_Renta].[dbo].[PERFORMANCE_CLARO_RENTA] SELECT * FROM #PERFORMANCE_CLARO_RENTA END
  10. Bom dia! Verificando o codigo esta trazendo no resultado do WHERE somente os registros que possuem a condição id_auth = '00.0000.0000' você pode colocar esta condição no ON para unir essas duas tabelas, ou utilizar um CASE WHEN para somar quando houver essa condição. SUM(CASE WHEN id_auth = '00.0000.000' THEN 1 ELSE 0 END)[TOTAL] mas acredito que assim deva resolver: SELECT DATE_FORMAT(d.data_exame, %d) AS dia, t.id_auth, COUNT(t.id_auth) AS TOTAL FROM ( SELECT DISTINCT data_exame FROM tbl_medreq_hospital_exame WHERE data_exame BETWEEN '2019-11-02' AND '2019-11-04' ) AS d LEFT JOIN (SELECT id_auth FROM tbl_medreq_hospital_exame WHERE id_auth = '00.0000.0000') AS t ON d.data_exame = t.data_exame GROUP BY t.data_exame LIMIT 0,30
  11. E aew boa tarde! bom eu não conheço muito esse programa ai, mas se você tiver utilizando um array ou uma matriz, eu iria sugerir que você coloque uma unidade a mais para esse tipo de validação tipo um binario (0,1) onde 0 não foi executado e 1 foi executado, e no seu loop você verificar esse campo e valida a ação. apos e execução, você altera o valor do campo para o valor executado escolhido 0000-0 = não executou 1111-0 = não executou 2222-1 = executou 3333-0 = não executou
  12. ActiveCell.Offset(0, 1).Select
  13. Bom pelo que eu entendi, não é para trazer datas expedidas anteriores as datas rebecidas, nesse caso, você pode colocar uma condição para não trazer datas menores no where ou no on das tabelas SELECT A.*, B.* FROM tbl_recepcao AS A LEFT JOIN tbl_expedicao AS B ON A.CODIGO = B.CODIGO AND B.DATA >= A.DATA
  14. você quer que apareça o menu somente quando o Checkbox tiver selecionado? se for isso, você pode desabilitar ele, e criar uma função e atribuir ela no evento onclick da teg do checkbox. seria mais ou menos assim: <html> <head> <script> function habilitaMenu() { if(checkbox.value == 1) { document.getElementById('menu').style.display = "inline"; } else{ document.getElementById('menu').style.display = "none"; } } </script> </head> <body> <input type="checkbox" id="bt_menu" onclick="habilitaMenu()"> <div id="menu"> <ul class="nav-links"> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Work</a></li> <li><a href="#">Projects</a></li> </ul> </div> </body> </html>
  15. AlexandreNSilva

    Login PHP

    Arcadyum, segue alguns exemplos: LDAP: https://www.exchangecore.com/blog/using-ldap-active-directory-authentication-php Javascript: https://www.formget.com/javascript-login-form/ no caso do banco de dados, é só fazer um select e verificar se as senhas digitadas e o resultado do select são os mesmos
×
×
  • Criar Novo...