Forse a te serve una cosa diversa che comunque si può fare, ad esempio selezionare un utente e visualizzare tutti i relativi downloads, oppure selezionare un allegato e visualizzare l'elenco degli utenti che lo hanno scaricato, tutte cose fattibili, basta adattare la query.
Mi sono dimenticato di inserire nella query la tabella attachments, con quella hai la possibilità di sapere di che download si tratta, o per lo meno in quale post/topic/forum si trova.
Un esempio di una query su più tabelle è questa che estrae gli ultimi x allegati, Fa parte di una Mod che ho realizzato:
Codice: Seleziona tutto
$sql = "SELECT
pf.forum_name, pf.parent_id, pf.forum_id,
pt.topic_id, pt.forum_id, pt.topic_title, pt.topic_first_poster_name, pt.topic_attachment, pt.topic_moved_id, pt.topic_time,
pp.topic_id, pp.post_id, pp.post_time,
pa.attach_id, pa.topic_id, pa.physical_filename, pa.extension, pa.post_msg_id
FROM ". FORUMS_TABLE." pf,". TOPICS_TABLE. " pt,". POSTS_TABLE. " pp,". ATTACHMENTS_TABLE. " pa
WHERE $where_list
AND pf.forum_id = pt.forum_id
AND pt.topic_id = pa.topic_id
AND pt.topic_id = pp.topic_id
AND pt.topic_time = pp.post_time
AND pp.post_id = pa.post_msg_id
AND pa.extension = 'jpg'
AND pt.topic_moved_id = 0
AND pt.topic_attachment = 1
AND pa.extension = 'jpg'
ORDER BY pt.topic_time DESC LIMIT $n_top";
$db->sql_query($sql);