Jump to content
Jack Oliveira

Comparação de horarios

Recommended Posts

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) {

 

 

Share this post


Link to post
Share on other sites

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);

 

Share this post


Link to post
Share on other sites
4 horas atrás, 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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

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