Ajuda obtenção de horas e limitar o resultado por id sem replicação.

01/03/2019

2

Galera estou com um problema aqui, estou desenvolvendo um projeto na qual quando é exibido a data de cada usuário, ex: Visto há 59 segundo -- Visto há 2 horas porem não consigo de jeito nenhum fazer com que o resultado se repita nas outras linhas, segue a baixo o código, por favor me ajudem,

Obs eu ja tentei com:

<?php
$resul_ult_aces = "SELECT data_acesso FROM adms_ultimos_acessos
                                            WHERE adms_usuario_id = ''''''''".$row_user[''''''''id'''''''']."''''''''
                                            ORDER BY id DESC LIMIT 1";
                                        $resultado_ult_aces = mysqli_query($conn, $resul_ult_aces);
                                        $row_ult_aces = mysqli_fetch_assoc($resultado_ult_aces);
                                        
                                        $data_atual = date("Y-m-d H:i:s");
                                        $data_ult_aces = $row_ult_aces[''''''''data_acesso''''''''];
                                        $ob_data_atual = new DateTime($data_atual);
                                        $ob_data_ult_aces = new DateTime($data_ult_aces); 

                                        $intervalo = $ob_data_atual->diff($ob_data_ult_aces);
                                         ?>
                                        <td class="d-none d-sm-table-cell"><?php 
                                          echo "O último acesso há 
										{$intervalo->y} anos, 
										{$intervalo->m} meses, 
										{$intervalo->d} dias, 
										{$intervalo->h} horas, 
										{$intervalo->i} minutos e 
										{$intervalo->s} segundos - " 
											. $row_ult_aces[''''''''data_acesso''''''''];  ?></td>


Nesse caso deu certo porém eu quero que quando passar o tempo ele automaticamente apague ex: assim que passar 59 min apague e apareça 1 hora e assim por diante..

Diante da dificuldade usando o código acima eu busquei por algo parecido com oque eu quero aqui mais não consigo resolver o problema da replicação de horas nos outros usuários, sei que é erro está na obtenção do ID especifico para exibir mais não sei como resolver :( HELP!!

 
<php
$resul_ult_aces = "SELECT DATE_FORMAT(data_acesso, ''''''''%Y-%m-%d-%H-%i-%s'''''''') as data_acesso FROM adms_ultimos_acessos
                                        WHERE adms_usuario_id = ''''''''".$row_user[''''''''id'''''''']."''''''''
                                        ORDER BY id DESC LIMIT 1";
                                        $resultado_ult_aces = mysqli_query($conn, $resul_ult_aces);
                                        $row_ult_aces = mysqli_fetch_assoc($resultado_ult_aces); 							
$adms_ultimos_acessos =  $row_ult_aces [''''''''data_acesso''''''''] ;
$databd2 = date(''''''''Y-m-d-H-i-s'''''''');  
$data1 = explode(''''''''-'''''''', $adms_ultimos_acessos); 
$data2 = explode(''''''''-'''''''', $databd2);  
$ano = $data2[0] - $data1[0];
$mes = $data2[1] - $data1[1]; 
$dia = $data2[2] - $data1[2];  
$hora = $data2[3] - $data1[3]; 
$min = $data2[4] - $data1[4]; 
$seg = $data2[5] - $data1[5];  

// configuração data  
if ($mes < 0) { $ano--; $mes = 12 + $mes; }  	
if ($dia < 0) { $mes--; $dia = 30 + $dia; }  
if ($ano > 0) { $str_ano  = $ano . '''''''' ano''''''''; }  
if ($ano > 1) { $str_ano .= ''''''''s ''''''''; }  
if ($mes > 0) { @$str_mes .= $mes . '''''''' mes''''''''; }  
if ($mes > 1) { 	
if ($ano > 0) { $str_ano .= '''''''', ''''''''; } $str_mes .= ''''''''es''''''''; }  
if ($dia > 0) { $str_dia = $dia . '''''''' dia''''''''; }  if ($dia > 1) { 	
if ($mes > 0) { $str_mes .= '''''''', ''''''''; } $str_dia .= ''''''''s''''''''; }  

// configuração hora  
if ($min < 0)  { $hora--; $min = 60 + $min; }  
if ($seg < 0)  { $min--; $seg = 60 + $seg; }  
if ($hora > 0) { $str_hora = $hora . '''''''' hora''''''''; }  
if ($hora > 1) { @$str_hora .= ''''''''s''''''''; }  
if ($min > 0)  { @$str_min .= $min . '''''''' minuto''''''''; }  
if ($min > 1)  { 	
if ($hora > 0) { @$str_hora .= '''''''', ''''''''; } 	@$str_min .= ''''''''s''''''''; }  
if ($seg > 0)  { $str_seg = $seg . '''''''' seg''''''''; }  
if ($seg > 1)  { 	
if ($min > 0)  { $str_min .= '''''''' e ''''''''; } $str_seg .= ''''''''s''''''''; }  
                                        
                                        
                              echo @$str_ano, @$str_mes, @$str_dia,'''''''', '''''''', @$str_hora, @$str_min, @$str_seg, '''''''' atrás'''''''';          
                                        ?>



VALEU GALERA!
Responder