Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Pages : 1
Hello, Vous avez le bonjour de colletaphoto.
J'aimerai mettre sur la page d'index du site un affichage des 10 derniers topics du forum:
j'ai un fait un
SELECT *
FROM table_topics
mais dans ce cas, le topics des forums non accessibles aux non connectés apparaissent...
Vous feriez comment pour éviter cet inconvéniant?
Je pense qu'il faut tenir compte de la table table_forum_perms... avec un truc du genre "where group_id = 3" mais je sais pas trop comment faire... j'ai l'impression qu'il faut faire une soustraction, et la mon petit cerveau nage un peu...
merci d'avance
Hors ligne
En fait, il faudrait que j'arrive je croix à écrire en mysql la chose suivante:
"
Select *
From table_topics
- (moins)
Select *
From table_topics, table_forum_perms
Where table_topics.forum_id = table_forum_perms.forum_id
And group_id=3
"
Suis-je claire? (c'est pas sur du tout)
merci d'avance
Hors ligne
Je pense qu'il faut tenir compte de la table table_forum_perms... avec un truc du genre "where group_id = 3" mais je sais pas trop comment faire... j'ai l'impression qu'il faut faire une soustraction
Oui, tout à fait...
On va se servir de la variable $pun_user['g_id'], puisque les permissions de forum_perms sont par groupe.
Il faut donc inclure "common.php" pour avoir accès aux fonctions et variables de FluxBB sur la page en question.
(note : le cas "where group_id=3" n'est qu'un cas particulier..., là on veut que cela soit valable dans tous les cas).
Et cela donne (avec la syntaxe propre de FluxBB) :
$result = $db->query('SELECT * FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1)') or error('Impossible de retrouver la liste des discussions', __FILE__, __LINE__, $db->error());Hors ligne
Merci Mpok,
ca marche...sauf que j'arrive pas à ajouter :
ORDER BY id DESC LIMIT 0,80
à la fin de la requete sans que j'ai un message d'erreure
peut-etre faut-il rajouter cela ailleurs?
J'aimerai au moins mettre le tri décroissant
encore merci
Hors ligne
problème résolu... avec un
ORDER By t.posted DESC LIMIT 0,80
ca marche
merci à Mpok et au forum....
Hors ligne
Pages : 1