Ir para conteúdo
Fórum Script Brasil
  • 0

Adicionar 01 hora a uma variável e comparar com hora atual (Resolvido)


RRH

Pergunta

Psquisando sobre como lidar com horas no php encontrei o código abaixo que soma horas a hora atual:

<?php
echo date("H:i:s", strtotime("3 hours"));
?>

Só que estou precisando adicionar 01 hora a uma variável e não a hora atual mas não estou conseguindo.

Editado por RRH
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Ok, obrigado. Mas como já estava com a cabeça "quente" esqueci de dizer que tal variável conterá uma hora no formato H:i:s (00:00:00) vindo de uma pesquisa ao bd mysql.

<?

$sql = "SELECT hora FROM tabela;"

$resultado = mysql_query ($sql);

while ($linha = mysql_fetch_array($resultado)){

echo $linha["hora"]; Aqui seria a hora ex: 18:00:00 + 1 hora = 19:00:00

}

?>

Editado por RRH
Link para o comentário
Compartilhar em outros sites

  • 0

Seguindo sua dica consegui avançar, porém agora estou agarrado na condição, vejam:

<?php 

$datahoraatual = strtotime ($linha['data_inicial']." ".$linha['hora_inicial']);

$datahorahmais = strtotime("1 hours", $datahoraatual);

...

if (strtotime($datahoraatual) > strtotime($datahoramais)){

echo "<td align='center' style='background-color:red;'>".date('H:i', strtotime($linha["hora_inicial"]))."</td>";

}else{

echo "<td align='center'>".date('H:i', strtotime($linha["hora_inicial"]))."</td>";
}
?>

O código acima não está funcionando! Ele sempre está exibindo a célula em vermelho. Estou precisando que após uma consulta o sistema compare a hora atual com a hora em que o registro foi inserido no mysql e se já tiver passado 01 hora ou mais da inclusão do registro mude a cor da célula para vermelho.

Editado por RRH
Link para o comentário
Compartilhar em outros sites

  • 0

Alterando o formato da data/hora a serem comparadas de:

Ex:

2011-08-19 00:00:00

para

20110819000000

consegui o resultado que buscava:

<? ...
$hoje = date("YmdHis");
$hregistro = strtotime ($linha['data_registro']." ".$linha['hora_registro']);
$hmais = strtotime("1 hours", $hregistro);
$hmais_novo = date("YmdHis",$hmais);


if ($hoje >= $hmais_novo) {

echo "<td align='center' style='background-color:red;'>".date('H:i', strtotime($linha["hora_registro"]))."</td>";

}else{

echo "<td align='center'>".date('H:i', strtotime($linha["hora_registro"]))."</td>";
}

...?>

Editado por RRH
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...