Ir para conteúdo

POWERED BY:

Arquivado

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

Tribb

[Resolvido] Select Multipla Tabela c/ Multiplos Order By

Recommended Posts

Olá..

Fiz este tópico mas ele acabou "morrendo" e então resolvi postar na área correta.. Que eu estava pergutnando na errada creio eu..

 

Meu objetivo é montar o registro de atividades da conta através de 2 tabelas distintas..

Mas elas precisam ser ordenadas por Tempo e c/ um Limite de 5 por exemplo..

 

Bom eu tentei fazer uma query mas obviamente ele não funcionou. Mas talves ela explique o que eu quero fazer.

SELECT `cp_log`.`time`, `cp_log`.`log`, `cp_log`.`ip`, `loginlog`.`time`, `loginlog`.`ip`, `loginlog`.`rcode` 
FROM `cp_log`, `loginlog` 
WHERE `cp_log`.`user` = 'leo' OR `loginlog`.`user` = 'leo' 
ORDER BY `cp_log`.`time` AND `loginlog`.`time` DESC LIMIT 5

 

Então fiz um codigo em php, utilizando 2 selects e ordenandos..

 

$limit = 5;

$query = mysql_query("SELECT `time`, `rcode`, `ip` FROM `loginlog` WHERE `user` = 'x' ORDER BY `time` DESC LIMIT $limit");
$query2 = mysql_query("SELECT `time`, `log`, `ip`  FROM `cp_log` WHERE `user` = 'x' ORDER BY `time` DESC LIMIT $limit");
while($row = mysql_fetch_row($query)) {
$order[] = strtotime($row[0]);
$log['time'][] = $row[0];
$log['log'][] = $row[1];
$log['ip'][] = $row[2];
}
while($row = mysql_fetch_row($query2)) {
$order[] = strtotime($row[0]);
$log['time'][] = $row[0];
$log['log'][] = $row[1];
$log['ip'][] = $row[2];
}
array_multisort($order, SORT_DESC, $log['time'], $log['log'], $log['ip']);
for($i = 0; $i < $limit; $i++)
echo $log['time'][$i].' // '.$log['log'][$i].' // '.$log['ip'][$i].'<br />';

Este codigo está funcionando.. Eis o resultado.. http://leo-pc.tolkz.com:3535/index2.php

 

Se alguem pudesse me falar o q eu devo ler/procurar ou se isso que quero fazer é possivel em apenas 1 query.. Agradeço

 

Obrigado pela atenção...

 

@edit

Código php arrumado.

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.