Ir para conteúdo
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) {

 

 

Compartilhar este post


Link para o post
Compartilhar em outros 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);

 

Compartilhar este post


Link para o post
Compartilhar em outros 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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.