Jump to content


Photo

"atrasar" Hora Em Servidor... Como Faço?


  • Faça o login para participar
2 replies to this topic

#1 Renan L. Miranda

Renan L. Miranda

    Normal

  • Usuários
  • 101 posts
  • Sexo:Não informado

Posted 09/07/2012, 09:44

Como estamos galera? Tudo em ordem?

Bem... estou com o seguinte problema....

Tenho um sistema de notícia, onde tem um campo VARCHAR para hora ( sei que é errado, mas depois eu mudo ), e quando posto uma notícia, ele cadastra a notícia com o adiantamento de 3 horas, isso é por conta do servidor. Pois bem... eu queria uma método simples, onde eu pudesse no ECHO da hora, eu poder retroceder essas 3 horas do servidor.

Grande abraço

#2 Fábio Morato

Fábio Morato

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino
  • Localidade:Pitangui

Posted 27/07/2012, 04:07

Pega o horário com o PHP e tire 3 horas dele:
<?php
$hora = date("H");
if($hora==02)
$hora = 23;
else if($hora==01)
$hora = 22;
else if($hora==00)
$hora = 21;
else
$hora-=3;
$minuto = date("i");
$segundo = date("s");
$horario = $hora . $minuto . $segundo;
// agora é só inserir o horário com -3 no servidor...
?>

Ou então, caso não queira enviar o horário com 3 horas à menos e sim mudar na hora do ECHO, como disse:
<?php
// defina $horario como o valor recebido na query...
$divhorario = explode(":", $horario);
$hora = $divhorario[0];
if($hora==02)
$hora = 23;
else if($hora==01)
$hora = 22;
else if($hora==00)
$hora = 21;
else
$hora-=3;
$horario = $hora . $divhorario[1] . $divhorario[2]; // só deixe $divhorario[2] se houver os segundos...
echo "... as $horario.";
?>

Espero que tenha ajudado!

#3 zerof

zerof

    Normal

  • Usuários
  • 76 posts
  • Sexo:Masculino
  • Localidade:São Paulo
  • Interesses:GEOLOCALIZAÇÃO, APACHE, PHP, MYSQL, FOTOGRAFIA, GERENCIAMENTO DE PROJETOS

Posted 27/07/2012, 10:31

O atraso em 3h, significa:

1. o servidor está coletando datas conforme o fuso horário UTC, (UTC timezone).
2. não está localizado no Brasil, ou se está, não coleta datas conforme um dos fusos horários brasileiros.
( O fuso horário geral, para o Brasil, englobando horário de Brasília chama-se 'America_Sao Paulo' ).

3. de forma generalizada, os servidores tomam como base o 'UTC'.
(Isto não é nenhum problema)
4. pode-se recolher uma data sob qualquer fuso horário, sem problema algum.
Neste URL, tenho uma aplicação que permite saber a data e instante em qualquer fuso horário:

http://ed48.com/timezones/

Neste outro, voce poderá obter informações completas sobre datas e intantes, para conseguir de forma simples o que deseja:

http://ed48.com/rsr/rels/

Para recursos gerais:

http://ed48.com/

Na postagem anterior, onde se lê: "O atraso em 3h, significa:" leia-se "O adiantamento em 3h, significa:"

O atraso em 3h, significa:

Na postagem anterior, onde se lê: "O atraso em 3h, significa:" leia-se "O adiantamento em 3h, significa:"


Edição feita por: zerof, 27/07/2012, 09:57.

--
zerof
ASSESSORIA & INTERDISCIPLINARIDADE
( ADVICE & INTERDISCIPLINARITY )
http://ed48.com/ - http://educar.pro.br




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq