Olá,
Estou desenvolvendo um sitema web que na pagina de Login preciso colocar uma mensagem tipo “Bom dia” , “Boa tarde” ou “Boa Noite” dependendo do horario do dia…
Existe alguma função que faça isso??? se não, como posso verificar o horario atual e ver se é maior que 12:00 ???(mais ou menos isso!)
Se quiser ser chato, você pode verificar qual é a latitude e longitude do seu cliente (isso você pode verificar pela sua cidade, embora existam cidades tão grandes, como Altamira, no Pará, que tenham intervalos de longitude consideráveis), e ver em que hora o sol se levanta ou se põe. Isso é coisa para chatos e preciosistas mesmo - fora que você tem de levar em conta se seu cliente atende ao horário de verão (São Paulo, Rio etc.) ou se não atende (Bahia, Pernambuco etc.)
Se quiser ser simples, pode considerar que das 06:00 às 12:00 é “bom dia”, das 12:01 às 18:00 é “boa tarde” e das 00:00 às 05:59, além de 18:01 às 23:59, é “boa noite”. Obviamente que você vai ver que em determinados dias e estações 18:00 não se parece nem um pouco com “boa noite”, mas isso é só um detalhe. Talvez alguém se incomode com o fato de receber um “boa noite” no Acre (2 horas de diferença) quando seu servidor está no Rio de Janeiro; nesse caso, deixe o “boa noite” em uma função Javascript, para poder usar o horário do browser (não o do servidor).
É que com calendários, datas e horários você pode ser tão chato* quanto sua imaginação viajar. (Acho que o java.util.Calendar deve ter sido projetado “parcialmente” por um desses chatos de calendário; ele não conseguiu concluir o que estava querendo fazer e é por isso que temos essa aberração de não conseguirmos calcular uma mísera diferença entre datas.)
Por que não utiliza isso em JavaScript, com o horario do cliente,
function verificaHora()
{
stamp = new Date();
var hours;
var time;
hours = stamp.getHours();
if (hours >= 12) {
time = " Boa Tarde ";
}
else {
time = " Bom dia ";
}
document.write(time);
}
Só aperfeiçoar conforme sua necessidade colocando os ifs.