Buenas
Estoy armando para mi pagina la funcion que muestre en las fechas como hacen muchas paginas que diga: "el usuario comento hace 10 dias 20 minutos", etc, el tema es que parece estar ok pero me dice siempre hace 20 minutos, en todos los posts que hago, ademas de que esta mal obvio, lo que hago es esto:
Código PHP:
$ultima_actividad = mysql_query("SELECT *, UNIX_TIMESTAMP(fecha) AS fecha_unix FROM....
Luego la funcion:
Código PHP:
function hace($fecha_unix){
//obtener la hora en formato unix
$ahora=time();
//obtener la diferencia de segundos
$segundos=$ahora-$fecha_unix;
//dias es la division de n segs entre 86400 segundos que representa un dia;
$dias=floor($segundos/86400);
//mod_hora es el sobrante, en horas, de la division de días;
$mod_hora=$segundos%86400;
//hora es la division entre el sobrante de horas y 3600 segundos que representa una hora;
$horas=floor($mod_hora/3600);
//mod_minuto es el sobrante, en minutos, de la division de horas;
$mod_minuto=$mod_hora%3600;
//minuto es la division entre el sobrante y 60 segundos que representa un minuto;
$minutos=floor($mod_minuto/60);
if($horas<=0){
echo $minutos.' minutos';
}elseif($dias<=0){
echo $horas.' horas '.$minutos.' minutos';
}else{
echo $dias.' dias '.$horas.'horas '.$minutos.'minutos';
}
}
y para mostrar la fecha hago dentro del while:
Código PHP:
while ($actividad = mysql_fetch_array($ultima_actividad))
{
$i=1;
$titulo_comment = renplazar( $i , $actividad[nome] );
print hace($actividad[fecha]);
....
Alguna idea?