Foros del Web » Programando para Internet » PHP »

duda facil supongo

Estas en el tema de duda facil supongo en el foro de PHP en Foros del Web. hola foros del web, bueno yo se como subir fecha y hoora a mysql y despues mostrarla, pero me gustaria saber como puedo mostrar esos ...
  #1 (permalink)  
Antiguo 04/05/2010, 09:37
 
Fecha de Ingreso: abril-2010
Mensajes: 68
Antigüedad: 14 años
Puntos: 0
Pregunta duda facil supongo

hola foros del web, bueno yo se como subir fecha y hoora a mysql y despues mostrarla, pero me gustaria saber como puedo mostrar esos datos:

Noticia subida "hace 2 horas", "hace 3 dias", "hace 1 mes", etc...
muchas gracias
saludos
  #2 (permalink)  
Antiguo 04/05/2010, 09:42
 
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: duda facil supongo

A bote pronto y sin haber hecho nada por el estilo antes, supongo que tendrías que obtener la fecha y hora actuales y hacer una función que te calcule el tiempo que ha pasado entre la fecha y la hora de la noticia y la fecha y hora actuales.

De modo que, si el día es el mismo, saques sólo la diferencia entre horas; si los días son diferentes, la diferencia entre días; si los meses son diferentes, muestre la diferencia en meses... etc
  #3 (permalink)  
Antiguo 04/05/2010, 10:06
Avatar de dyegox  
Fecha de Ingreso: enero-2008
Mensajes: 173
Antigüedad: 16 años, 3 meses
Puntos: 7
Respuesta: duda facil supongo

Código PHP:
Ver original
  1. <?php
  2. /**
  3.  *
  4.  * @access private
  5.  * @type: function
  6.  * @description: genera un texto que indica Hace cuanto se genero. Ej: Hace un dia.
  7.  */
  8.  
  9. function timestamp($session_time)
  10. {
  11.     $time_difference    = time() - $session_time;
  12.  
  13.     $seconds            = $time_difference ;
  14.     $minutes            = round($time_difference / 60 );
  15.     $hours              = round($time_difference / 3600 );
  16.     $days               = round($time_difference / 86400 );
  17.     $weeks              = round($time_difference / 604800 );
  18.     $months             = round($time_difference / 2419200 );
  19.     $years              = round($time_difference / 29030400 );
  20.  
  21.     # Segundos
  22.     if($seconds <= 60)
  23.     {
  24.         return"Hace unos segundos.";
  25.     }
  26.     # Minutos
  27.     elseif($minutes <=60)
  28.     {
  29.         if($minutes==1)
  30.         {
  31.             return"Hace aproximadamente un minuto.";
  32.         }
  33.         else
  34.         {
  35.             return"Hace aproximadamente $minutes minutos.";
  36.         }
  37.  
  38.     }
  39.     # Horas
  40.     elseif($hours <=24)
  41.     {
  42.         if($hours==1)
  43.         {
  44.             return"Hace mas de una hora.";
  45.         }
  46.         else
  47.         {
  48.             return"Hace mas de $hours horas.";
  49.         }
  50.     }
  51.     # Dias
  52.     elseif($days <= 7)
  53.     {
  54.         if($days==1)
  55.         {
  56.             return"Hace un dia.";
  57.         }
  58.         else
  59.         {
  60.             return"Hace $days dias.";
  61.         }
  62.     }
  63.     # Semanas
  64.     elseif($weeks <= 4)
  65.     {
  66.         if($weeks==1)
  67.         {
  68.             return"Hace una semana.";
  69.         }
  70.         else
  71.         {
  72.             return"Hace $weeks semanas.";
  73.         }
  74.     }
  75.     # Meses
  76.     elseif($months <=12)
  77.     {
  78.         if($months==1)
  79.         {
  80.             return"Hace un mes.";
  81.         }
  82.         else
  83.         {
  84.             return"Hace $months meses.";
  85.         }
  86.     }
  87.     else
  88.     {
  89.         if($years==1)
  90.         {
  91.             return"Hace un año.";
  92.         }
  93.         else
  94.         {
  95.             return"Hace $years años.";
  96.         }
  97.     }
  98. }
  99. ?>

para usarlo tienes qe hacer asii..

si la hora es 89739873 por ejemplo ejeje

Código PHP:
Ver original
  1. <?php
  2. $session_time = 89739873;
  3. echo timestamp($session_time);
  4. ?>
  #4 (permalink)  
Antiguo 04/05/2010, 12:02
 
Fecha de Ingreso: abril-2010
Mensajes: 68
Antigüedad: 14 años
Puntos: 0
Respuesta: duda facil supongo

EXCELENTEEEE!! muchas graciass!!!

Etiquetas: facil
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 06:22.