Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

HostGuardian

Saudação em PHP com Hora

Recommended Posts

Bom dia,

 

Estou com o seguinte codigo php:

 

// Saudação
$hora = date("H");

if ($hora >= 0 and $hora < 6) {
    echo "Boa Madrugada!";
    }
elseif ($hora >= 6 and $hora < 12) {
    echo "Bom dia!";
    }
elseif ($hora >= 12 and $hora < 18) {
    echo "Boa tarde!";
    }
    else {
    echo "Boa noite";
    }    
// Fim

 

Nele a hora ta saindo com H:i:s ou seja no formato: 10:30:25 gostaria apenas que aparece-se H:i horas e minutos.

 

Notei também que os turnos não está corretos tipo quando da 17h ele diz que é Boa noite quando na verdade seria boa tarde, ou seja é como se diminuese uma hora em seu turno, alguem poderia me dar uma luz ae?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em primeiro lugar, "Boa madrugada" não existe.

 

Em segundo lugar, é melhor fazer isso usando JavaScript, que usará as configurações de hora do cliente, ao invés de PHP, que usará as do servidor. Se o seu servidor estiver no Brasil e configurado para o fuso-horário 'America/Sao_Paulo', agora são quase 11 da manhã, então a saudação será "Bom dia", mas se você receber um visitante de Portugal, dar "Bom dia" para ele será estranho pois agora já são quase 3 da tarde lá.

 

JavaScript

var d = new Date();
    var time = d.getHours();
 
    if (time < 12) 
      {
      document.write("Bom dia!");
      }
    if (time > 12 && time <= 18) 
      {
      document.write("Boa tarde!");
      }
    if (time > 18) 
      {
      document.write("Boa noite!");
      }

Compartilhar este post


Link para o post
Compartilhar em outros sites

mangakah, seguir seus conselhos e mudei para JS a aplicação, ficou bem melhor e atende o que eu preciso, muito obrigado pela dica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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