Jack Oliveira 1 Denunciar post Postado Fevereiro 21, 2021 Ola bom dia Eu preciso que o php soma as horas atual com a hora de cadastro no banco de dados Neste horario quando for abrir a página ele fazer uma contagem de minutos entre a hora atual fazendo que a pagina fica disponivel por apenas uns certo minutos ex: Horario Atual: 09:51:12 Horario de cadastro: 09:51:55 Neste dois horarios ele somar mais 10 minutos depois de passar estes 10 minutos a pagina redirecionar ao link desejado Fiz desta forma aqui mais não esta dando certo <?php //Horario Atual $HoraAtual = date('H:m:s'); $DataAtual = implode(':', array_reverse(explode(':', $HoraAtual))); $DataServidor = implode(':', array_reverse(explode(':', $DataTime))); $Da = strtotime($DataAtual); $Ds = strtotime($DataServidor); $Resultado = ($Ds - $Da) /600; // 600 = 10 minutos if ($Resultado < 0) { //Manter a página ativa por 10 minutos depois de ter realizado o cadastro }else{ //Redirecionar a página depois de ter passado os 10 minutos Redireciona(''.ConfigPainel('site_url').''); } ?> Dentro do if Tinha feito de algumas formas porem creio q estaria errados if ($Resultado != -10) { if ($Resultado = +10) { Compartilhar este post Link para o post Compartilhar em outros sites
Omar~ 87 Denunciar post Postado Fevereiro 22, 2021 Acontece uma coisa o PHP só pode entregar dados já prontos para o usuário. Ou seja depois que ele renderizou o conteúdo ele não interage com o usuário (aliás nunca o php interage com o usuário). Nesse entendimento será necessário que o usuário recarregue o conteúdo para que o php possa processar novos dados e renderizar para o usuário. Assim sendo pode fazer assim no PHP <?php $horaAtual = "13:30:00"; // use date('H:m:s') $horaAnterior = "13:19:00"; // Não sei como vai obter isso... $minutoAtual = (int) explode(':', $horaAtual)[1]; $minutoAnterior = (int) explode(':', $horaAnterior)[1]; $meioTempo = ($minutoAtual - $minutoAnterior); if ($meioTempo <= 10) { // fica na página } else { // redireciona } Lembrando que pode também simplificar usando um COOKIE de 10 minutos de duração. Se você quiser que o redirecionamento aconteça de forma altomática, você tem que usar um script que funcione no software do usuário. setTimeout(function () { window.location.href = "https://endereco_qualquer"; }, 600000); Compartilhar este post Link para o post Compartilhar em outros sites
Jack Oliveira 1 Denunciar post Postado Fevereiro 22, 2021 Em 22/02/2021 at 18:40, Omar~ disse: Lembrando que pode também simplificar usando um COOKIE de 10 minutos de duração. Ola Omar boa noite como posso utilizar usando COOKIE? como posso montar ele? Igual disse a pagina ele tem que ficar ativa ao acesso no minimo 10 minutos apos isso se ele tentar acessar novamente a página ja não abrir mais Compartilhar este post Link para o post Compartilhar em outros sites