Ir para conteúdo
Fórum Script Brasil

Ualace

Membros
  • Total de itens

    5
  • Registro em

  • Última visita

Sobre Ualace

Ualace's Achievements

0

Reputação

  1. Olá Frank muito obrigado pelo retorno. Eu consegui, agora está fazendo o bloqueio corretamente, o codigo do cliente está atualizando corretamente também, código_cliente , porta e ip atualiza sempre que recebe novas informações esses 3 que são importantes por que a conta do revendedor vai identenficar pelo código do cliente se o streaming pertecence a ela. E a porta caso usuário tenha mais de uma conta atualiza e sempre mantendo o mesmo ip de verificação sempre no IP para atualizar o restante das colunas,caso pegar um codigo_cliente sem revenda o ip bloqueado vem pra mim, estava com difculdade para atualizar tudo em uma unica tabela por que estava gerando vários mais consegui resolver também. Só a tabela nevagador que está dando trabalho para atualizar quando recebe uma nova informação exemplo usuário trocou de navegador ela não atualiza de forma alguma, estou vendo se dou jeito nela. Em fim esse bloqueio é só para evitar muitas tentivas forçadas em contas como a porta fica exposta e o login é por ela resolvi ajustar essa questão do bloqueio, sei que vai lotar de ips mais para quebrar isso ajustei para limpar a cada 48horas.
  2. Olá estou com uma dificuldade em algo, seria para um painel de streaming. Preciso fazer algo no login que seria fazer uma consulta em uma tabela exemplo streamings coluna codigo_cliente pega a informação dessa coluna e adicionar em outra. Seria mais ou menos assim streamings -> codigo_cliente pegou código exemplo (1) enviar para bloqueios_login -> codigo_cliente Essa informação coletada é enviada para o banco se houver uma solicitação de login mal sucedida e cada erro ele vai registrar 5 tentativas após essas 5 tentativa será bloqueado acesso. Tenho código pré pronto que está funcionando até ponto exceto a coleta da informação codigo_cliente na tabela streaming. Essa função serve para enviar os dados para o painel do revendedor, onde aparece os clientes bloqueados por erros de acesso. Porem painel do cliente verifica o codigo_cliente para saber se esse cliente pertence ao mesmo evitar que apareçã uma pancada de ips de bloqueados de outros clientes que não são desse revendedor. Não estou dando conta de fazer se alguém puder ajudar Aqui está o código // Verificar se o formulário de login foi submetido if ($_SERVER["REQUEST_METHOD"] == "POST") { $porta = $_POST['porta']; $senha = $_POST['senha']; // Verificar se o IP já foi bloqueado $ip = $_SERVER['REMOTE_ADDR']; $verificarBloqueio = $conexao->prepare("SELECT * FROM bloqueios_login WHERE ip = ? AND data >= DATE_SUB(NOW(), INTERVAL 1 HOUR)"); $verificarBloqueio->bind_param("s", $ip); $verificarBloqueio->execute(); $resultadoBloqueio = $verificarBloqueio->get_result(); $tentativas = 0; if ($resultadoBloqueio->num_rows > 0) { // Se o IP já estiver na tabela, atualize o número de tentativas $row = $resultadoBloqueio->fetch_assoc(); $tentativas = $row['tentativas'] + 1; // Verificar se excedeu o limite de tentativas if ($tentativas >= 6) { die("Seu IP foi bloqueado devido a múltiplas tentativas de login malsucedidas. Tente novamente mais tarde."); } // Atualizar o número de tentativas na tabela a cada erro $atualizarTentativas = $conexao->prepare("UPDATE bloqueios_login SET tentativas = ? WHERE ip = ?"); $atualizarTentativas->bind_param("is", $tentativas, $ip); $atualizarTentativas->execute(); } else { // Se o IP não estiver na tabela, insira-o como 1 tentativa $inserirBloqueio = $conexao->prepare("INSERT INTO bloqueios_login (codigo_cliente, data, ip, navegador, tentativas) VALUES (?, NOW(), ?, ?, 1)"); $codigoCliente = 1; // Aqui está enviando a informação para o banco como 1 , preciso enviar o que está na tabela codigo_cliente $navegador = $_SERVER['HTTP_USER_AGENT']; $inserirBloqueio->bind_param("iss", $codigoCliente, $ip, $navegador); $inserirBloqueio->execute(); } // Obter a porta digitada no formulário $porta = $_POST['porta']; // Adicionar a porta na coluna codigo_stm coletada do que foi digitado no formulario não há necessidade de busca na tabela $adicionarPorta = $conexao->prepare("UPDATE bloqueios_login SET codigo_stm = ? WHERE ip = ?"); $adicionarPorta->bind_param("ss", $porta, $ip); $adicionarPorta->execute(); // Verificar as credenciais do usuário se está correta $verificarUsuario = $conexao->prepare("SELECT * FROM streamings WHERE porta = ? AND senha = ?"); $verificarUsuario->bind_param("ss", $porta, $senha); $verificarUsuario->execute(); $resultadoUsuario = $verificarUsuario->get_result(); // Se as credenciais estiverem corretas if ($resultadoUsuario->num_rows > 0) { // Limpar o IP da tabela de bloqueios se o login for bem-sucedido $limparBloqueio = $conexao->prepare("DELETE FROM bloqueios_login WHERE ip = ?"); $limparBloqueio->bind_param("s", $ip); $limparBloqueio->execute(); // Adicionar o valor da "porta" na coluna 'codigo_stm' $row = $resultadoUsuario->fetch_assoc(); $codigo_stm = $row['codigo_stm']; echo "Login bem-sucedido! Código STM: $codigo_stm"; } else { echo "Credenciais inválidas. Por favor, tente novamente."; } }
  3. Sim realmente, mais a ideia é pegar do banco o que foi postado ele exibe dia hora e ano do em que foi postado, a intensão é dar a opção de mostrar isso no idioma selecionado do site exemplo BR mostrar Segunda Feira , US Monday, vou verificar o script com calma amanhã para ver esse detalhe.
  4. Olá obrigado pela informação Testei aqui ele funciona porém está mostrando as informações em tempo real, seria as informações de hoje. Funcionou mais ficou dessa forma Quarta-Feira dia 02 de Agosto de 2023,1690578536 Teria que ser algo parecido '.date('D',$f['time']).'
  5. Olá preciso de uma ajuda com uma adaptação se alguém puder ajudar. Tenho um sistema que estou fazendo algumas alterações. Ele tem uma área de feed que seria uma área de posts para os usuários da plataforma. Os posts exibem a apenas a data em foi postado eu adicionei opções como dia da semana e hora porem o script não da opção de escolha para o idioma especifico como o sistema tem idiomas selecionáveis resolvi alterar a forma que mostra essa informação mais estou com dificuldade para adaptar ao sistema. Estava dessa forma <span>'.date('M d, Y',$f['time']).'</span> Alterei deixando dessa forma <span style="font-size: 12px;margin: 10 0 10;border-top: 1.9px solid #fff;padding: 10 0 0;position: relative;" >'.date('D',$f['time']).' '.date('d',$f['time']).' de '.date('M',$f['time']).' de '.date('Y',$f['time']).' ás '.date('H:i',$f['time']).'</span> Agora exibe exemplo Fri 28 de Jul de 2023 ás 18:08 Gostaria que fosse Sexta Feira 28 de Julho de 2023 ás 18:08 Mais que isso fosse setado pelo idioma do site no qual o usuário selecionou Peguei um exemplo como base onde poderia adicionar o idioma $data = date('D'); $mes = date('M'); $dia = date('d'); $ano = date('Y'); $semana = array( 'Sun' => 'Domingo', /* aqui entraria a tradução automática de acordo com idioma selecionado pelo usuário 'Mon' => 'Segunda-Feira', 'Tue' => 'Terca-Feira', 'Wed' => 'Quarta-Feira', 'Thu' => 'Quinta-Feira', 'Fri' => 'Sexta-Feira', 'Sat' => 'Sábado' ); $mes_extenso = array( 'Jan' => 'Janeiro', /* aqui entraria a tradução automática de acordo com idioma selecionado pelo usuário 'Feb' => 'Fevereiro', 'Mar' => 'Marco', 'Apr' => 'Abril', 'May' => 'Maio', 'Jun' => 'Junho', 'Jul' => 'Julho', 'Aug' => 'Agosto', 'Nov' => 'Novembro', 'Sep' => 'Setembro', 'Oct' => 'Outubro', 'Dec' => 'Dezembro' ); echo $semana["$data"] . ", {$dia} de " . $mes_extenso["$mes"] . " de {$ano}"; Gostaria de adaptar isso ao sistema atual, será que seria possível
×
×
  • Criar Novo...