Bom dia, Boa Tarde no sistema!

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

grato

Você quer ser chato ou simples?

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

1 curtida

MENOS, thingol, MENOS! :mrgreen:

É 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.)

  • Ou doente, escolha a melhor opção.

Então…eu fiz esta gambi…e acho que funciona…


		  Calendar cal = new GregorianCalendar();
		  int year = cal.get(Calendar.HOUR_OF_DAY);
		  System.out.println(year);
		  
		  if(year &gt 1 && year &lt12){
			  System.out.println("Bom dia!!!");
		  }else if(year &gt 13 && year &lt18){
			  System.out.println("Boa tarde!!!");
		  }else 
		  {
			  System.out.println("Boa Noite!!!");
		  }

A saida é só da hora…ex: 17:00…saida 17

Não precisa ser tão exato…
Obrigado a força.

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.

Mamão com açucar (de graça)

function verificaHora()
{
 	stamp = new Date();
 	var sours;
       var time;
 	hours = stamp.getHours();
 	document.write(hours);
 	if (hours >= 18 && hours <24) {
 		time = " Boa Noite ";
 	}
 	
 	if (hours >= 12 && hours <18) {
 		time = " Boa Tarde ";
 	}
 	
 	if (hours >= 0 && hours <12) {
 		time = " Bom Dia ";
 	}
	
	document.write(time);
}
1 curtida

Ah, bom, estava achando que seu sistema só funcionava durante o dia :stuck_out_tongue:

1 curtida

Pois é, quando não temos o que fazer estamos ai implementando coisas atoa.

1 curtida

Eu também acho que deveria fazer usando JavaScript, pois ficará mais “real” a mensagem.

frosemberg, agora já tem até o código ai.

Boa sorte.

Obrigado pessoal…

Acho que este tópico pode te dar uma luz…

http://www.guj.com.br/posts/list/9440.java

flw!