Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By edmin
      Olá pessoal, preciso de uma ajuda como seguinte, desde já, agradeço por qualquer ajuda...
      Pergunta: 
      Dado um arquivo 'ips.txt' com uma lista de endereços, o programa deve dar um ping para cada ip/domínio cadastrado. A linha contendo os resultados (mínimo, máximo, média)deve ser salva em arquivo 'log_data_hora.txt'.
      ips.txt
      www.claro.com.br;Servidor Claro
      www.colombo.com.br;Servidor Colombo
      www.renner.com.br;Servidor Renner
      www.gmail.com.br;Servidor Email Google
       
      tenho o seguinte código:
       
      import os from datetime import datetime def titulo(texto): print() print(texto) print('\033[7;97;40m-\033[m'*40) ###################################### def listar(): print('\033[7;97;40mListagem de IPs\033[m') print('\033[7;97;40m=\033[m'*72) arq = open('ips.txt', 'r') num = 0 linha = arq.readline() print('\033[7;97;40mNº .: IP/Dominio ...............: Cliente/Serviço ..................: \033[m') while linha != '': num = num + 1 partes = linha.split(';') print(f'\033[7;97;40m {num:3} {partes[0]:30s} {partes[1][:-1]}\033[m') linha = arq.readline() arq.close() print('\033[7;97;40m-\033[m'*72) ''' funcao que recebe um ip como parametro o tempo medio de resposta de um ping para este ip ou -1, caso erro ''' def ver_media(ip): dados = os.popen('ping '+ ip) # executa um comando no sistema operacional media = '' #find: retorna a posicao da string #(se nao encontrar retorna 0) for linha in dados: if linha.find('M‚dia') >= 0: posicao = linha.rfind('=') mediams = linha[posicao+1:] ms = mediams.rfind('ms') media = mediams[0:ms] if media == '': return -1 else: return int(media) def testar(): titulo('\033[7;97;40mTestando IPs Cadastrados\003[m') print('\033[7;97;40mIP/Domínio............ Tempo(ms)\033[m') print('\033[7;97;40m-\033[m'*40) arqLog = open('logs.txt', 'a') #salva em arquivo cada teste arq = open('ips.txt', 'r') linha = arq.readline() while linha != '': partes = linha.split(';') tempo = ver_media(partes[0]) funcao = ver_media(partes[1]) agora = datetime.now() dia = agora.strftime('%d/%m/%Y') hora = agora.strftime('%H:%M:%S') print(f'\033[7;97;40m{partes[0]:25s} {tempo}\033[m') arqLog.write(partes[0]+';'+str(tempo)+';'+dia+';'+hora+'\n') linha = arq.readline() arq.close() arqLog.close() #################################################### def logs(): titulo('\033[7;97;40m Listagem de Logs \033[m') arq = open('logs.txt', 'r') print('\033[7;97;40mNº..: IP / Dominio............: Média (ms): Dia do accesso..: Hora..:\033[m') num = 0 linha = arq.readline() while linha != '': num = num + 1 partes = linha.split(';') ip = str(partes[0]) tempo = str(partes[1]) dia = str(partes[2]) hora = str(partes[3]) print(f'\033[7;97;40m{num:3d} {ip:30s} {tempo:3s} {dia:17s} {hora} \033[m', end='') linha = arq.readline() arq.close() print('-'*43) print('\033[7;97;40m -> Se o tempo em ms, for igual a\033[m \033[1;31m-1\033[m,\033[7;97;40m\n' ' o host não está respondendo\033[m') return ######################### programa principal while True: print('\033[7;97;40m=\033[m' * 43) print('''\033[3;30;44m#### Selecione uma Opção: ####\033[m \033[7;97;40m 1. Listar Ips 2. Testar 3. Log de testes 4. Finalizar \033[m\n ''') print('\033[7;97;40m=\033[m' * 43) opcao = int(input('\033[3;30;44mDigite sua opção:\033[m ')) if opcao == 1: listar() elif opcao == 2: testar() elif opcao == 3: logs() elif opcao == 4: calcula() elif opcao == 5: print('\033[1;30mPrograma Finalizado pelo Usuário!!!\n' '==//==//==//==//==//==//==//==//==//\033[m') exit() else: print('\033[1;31mOps...\n' ' Opção Inválida!!!\033[m') break  
    • By heenrique
      Bom Dia Prezados!
       
      estou realizando o desenvolvimento de um sistema multi empresas no ao acessar ira pedir um código, ate a parte do código tudo OK, apos passar esse código vai para um tela de login onde cada meu sistema é ligado com o banco de dados do sistema (é um sistema padrão)do cliente ate aqui OK. gostaria de limitar a quantidade de acesso a esse código, ex empresa 1 contratou código com 3 acessos, empresa 2 contratou 1 acesso, alguém tem um dica ou um outro método para realizar esse controle ?
    • By Alvaro_php
      Pessoal boa noite
      Estou começando no PHP e estou com uma dúvida para poder enviar uma confirmação de uma página para outra e não quero mandar pela URL, para não ficar visível ao usuário
      Tenho um captcha e nele estou fazendo uma comparação para poder jogar para uma outra página , caso o código esteja certo
      <?php session_start();
          if( $_SESSION['captcha'] == $_POST['captcha']){
          header("location: emitir_titulo1.php");
          }else{
              echo "<h1>Erro - Código digitado errado</h1>";
          }
      ?>
      Até ai tudo bem esta fazendo certinho, o que eu quero é que na minha emitir_titulo1.php eu consiga fazer uma identificação qqer, onde demonstre que o usuário passou pelo captcha e não jogou o caminho completo até a página emitir_titulo1
      Tentei abri a session no emitir_titulo1 porém não deu certo, pois ela vem em branco, e quando coloco o caminho inteiro da página ele abre normalmente
      Tentei usar o $_POST, más não tem como ou não sei enviar mesmo, pois estou chamando a página pelo header
       
       
      Então mudei e tentei criar um arquivo txt com a palavra confirmado
      <?php session_start();
          if( $_SESSION['captcha'] == $_POST['captcha']){
              $fp = fopen("seguranca.txt","a+");
              $escreve = fwrite($ft,"confirmado");
              fclose($ft);
              header ("location: emitir_titulo1.php");
          }else{
              echo "<h1>Erro - Código digitado errado</h1>";
          }
      ?>
       
      e na página emitir_titulo1.php coloquei
      <?php  
          $arquivo = "seguranca.txt";
          $ft=fopen($arquivo,"r");
          $conteudo=fread($ft,filesize($arquivo));
          fclose($ft);
          
          if ($conteudo == 'confirmado')
          {
              unlink("seguranca.txt");
          }else{
              header("location: verificacao.php");
          }
      ?>
       
      Quando a página para executar e digito o código de verificação do captcha, aparece a mensagem abaixo
      Warning: fwrite(): supplied argument is not a valid stream resource in caminhodomeuservidor\valida.php on line 5
      Warning: fclose(): supplied argument is not a valid stream resource in caminhodomeuservidor\valida.php on line 6
      Warning: Cannot modify header information - headers already sent by (output started at caminhodomeuservidor\valida.php:5) in caminhodomeuservidor\valida.php on line 7
       
      Más quando coloco o caminho completo da minha página emitir_titulo1.php, ele continua abrindo a página normalmente, e o arquivo gerado esta em branco
       
      Alguém pode me dar uma ajuda, estou o dia todo nisso, o bom é que pesquisei bastante coisa, porém não tenho muito tempo para finalizar
       
      Desde já agradeço a todos
    • By hlv
      Olá, estou tentando desenvolver um site no wix no qual tenho um banco de dados já preenchido com um código e um arquivo PDF associado. Minha dúvida é como direcionar o usuário ao PDF após ele digitar o código associado?
    • By Alvaro Pacífico Serpa
      Olá pessoal, eu estava copiando um trecho de um código fonte usando o file_gets_contents
      $log=file_get_contents($url); $trechoInicial = "VideoUrl('"; $trechoFinal = "')"; $posicao1 = strpos($log, $trechoInicial); $posicao2 = strpos( $log, $trechoFinal, $posicao1 ); $trechoCopiado = substr( $log, $posicao1 + strlen( $trechoInicial ), $posicao2 - $posicao1 - strlen( $trechoInicial ) ); echo $trechoCopiado; Estava funcionando perfeitamente e do nada parou de funcionar, tem alguma outra forma de fazer isto que estou fazendo?
×

Important Information

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