Foros del Web » Programando para Internet » PHP »

validar fecha para saludar

Estas en el tema de validar fecha para saludar en el foro de PHP en Foros del Web. hola, hice un script para que la plataforma salude al usuario dependiendo de la hora, esto es si es de dia buenos dias, buenas tardes ...
  #1 (permalink)  
Antiguo 26/01/2009, 14:18
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 23 años
Puntos: 20
validar fecha para saludar

hola, hice un script para que la plataforma salude al usuario dependiendo de la hora, esto es si es de dia buenos dias, buenas tardes o buenas noches.

lo qe tengo es:


Código php:
Ver original
  1. $hora= date("g:i:s a", time()+7200);
  2. if($hora<'12:00:00 pm' && $hora>'12:00:00 am') {
  3. echo "Buenos Dias <b>".$nombreUsuarioL."</b>";
  4. echo "<p>";
  5. echo "</p>";
  6. } elseif($hora>'12:00:00 pm' && $hora<'6:59:00 pm') {
  7. echo "Buenas Tardes <b>".$nombreUsuarioL."</b>";
  8. echo "<p>";
  9. echo "</p>";
  10. }elseif($hora>'7:00:00 pm' && $hora<'12:00:00 am') {
  11. echo "Buenas Noches <b>".$nombreUsuarioL."</b>";
  12. echo "<p>";
  13. echo "</p>";
  14. }


pero resulta que siempre me dice buenas tardes independiente de la hora, que tengo mal?
__________________
Say no more.......
  #2 (permalink)  
Antiguo 26/01/2009, 14:33
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: validar fecha para saludar

Que estas comparando cadenas y no numeros
Código PHP:
// Obtenemos la hora
list($hora$ampm) = explode('-'date('g-a'time()));

if(
$ampm == 'am' && $hora 11// Las de de la noche pasa a ser cero
    
$hora 0;
else if(
$ampm == 'pm' && $hora 12// Aseguramos comparar en base a 24 horas
    
$hora += 12;

if(
$hora 12)
    echo 
'buenos dias';
else if(
$hora 19)
   echo 
'buenas tardes';
else
  echo 
'buenas noches'
__________________
- León, Guanajuato
- GV-Foto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:57.