Précédent   Forum des professionnels en informatique > PHP > Scripts > Forum > phpBB
phpBB Avant de poster -> Cours phpBB, FAQ phpBB et Sources phpBB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/08/2006, 13h03   #1
Invité de passage
 
Inscription : septembre 2005
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 11
Points : 4
Points : 4
Par défaut MOD pseudo Sub-Forums

Bonjour,

J'ai une petite question, j'ai installer le MOD pseudo sub-forums sur mon forum tout fonctionne parfaitement.

Suite à une demande, je voudrai pouvoir afficher les post qui sont dans les sous forums dans le forum parent et d'afficher entre [] le nom du doud-forum d'ou vient le message.

J'ai tester plusieur façon mais rien a faire, je n'arrive pas a trouver comment transformer la requete des messages dans viewforum.php , j'ai essayer de modifier la requete (je prend exemple sur la requete pour les annonces)
Code :
1
2
3
4
5
6
7
8
9
 
$sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_time, p.post_username
	FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . USERS_TABLE . " u2
	WHERE t.forum_id = $forum_id 
		AND t.topic_poster = u.user_id
		AND p.post_id = t.topic_last_post_id
		AND p.poster_id = u2.user_id
		AND t.topic_type = " . POST_ANNOUNCE . " 
	ORDER BY $topic_order ";
devenant:
Code :
1
2
3
4
5
6
7
8
9
 
$sql = "SELECT f.*,t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_time, p.post_username
	FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . USERS_TABLE . " u2
	WHERE t.forum_id = $forum_id OR f.attached_forum_id =$forum_id
		AND t.topic_poster = u.user_id
		AND p.post_id = t.topic_last_post_id
		AND p.poster_id = u2.user_id
		AND t.topic_type = " . POST_ANNOUNCE . " 
	ORDER BY $topic_order ";

or attached_forum_id =$forum_id , si je fait cela, c'est tous les messages qui s'affichent et cela plusieurs fois.

pour aussi afficher les messages des sous-forum.

Quelqu'un aurais une idée sur la façon de faire cette modification ?

Merci d'avance ;-)
Hitmaaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2006, 18h06   #2
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
J'ai pas trop compris ta demande

La dernière que j'ai utilisé ce mod, l'affichage dans l'index par exemple du titre du sous forum était déjà géré (si bien sur c'est le dernier sujet).

Humm ca dépend peut etre du mod aussi. Enfin détailles un peu mieux ta demande pour que l'on comprenne un peu mieux
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 02h11   #3
Invité de passage
 
Inscription : septembre 2005
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 11
Points : 4
Points : 4
bon je recommence, je veux afficher dans le forum parent, tous les topics, même ceux qui sont dans les sous forums, pour l'affichage du nom du sous-forum entre [], je ne me tracasse pas avec cela j'ai déja trouver comment faire.

Mon probleme c'est la requete pour afficher les titres des topics.
Hitmaaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 02h43   #4
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Dans ce cas, à quoi sert les sous-forums ???
Au lieu de mettre se mod tu pourrais créer ton propre qui qui rajouterai des tag devant les posts ce serait plus interessant et plus léger que de modifier plusieurs page pour faire au final ce qui est fait à la base par le forum à l'état initial
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 04h39   #5
Invité de passage
 
Inscription : septembre 2005
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 11
Points : 4
Points : 4
Certains sous-forums ont des moderateurs qui n'ont pas à moderer les messages postés dans d'autres sous-forums.

ensuite comme cela, les membres peuvent voir soit tous les messages soit en entrant dans les sous-forums ne voir que ceux qui les interessent.

et pour finir, parce qu'on me l'a demander
Hitmaaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 15h24   #6
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Je dormais et la solution à ton problème m'est apparue .

Ton problème vient du fait que tu as rajouté une table, tu fais un produit cartésien avec table et donc le résultat est ce que tu as. Normal. Pour infos phpbb est concu de la manière suivante :
  • topics_table : qui contient qu'une seule ligne
  • posts_table c pas la même chose car à chaque insertion un post y est rajouté donc il y a des doublons.doublons que tu vois correspondant au nombre de réponses contenu dans le topics.
Pour finir, il te manque une toute petite chose dans ta requete : La condition de jointure avec la table forums_table. donc tu devrais rajouter :
Code :
AND t.forum_id = f.forum_id
A vérifier que c'est la bonne écriture, je suis pas aller voir .

Là ca devrait fonctionner.

PS : pour faire ceci, il faut aussi rajouter toutes tes conditions dans la requête précédent celle-ci et qui contient un count. histoire de faire une pagination qui correspond à ton résultat
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 18h29   #7
Invité de passage
 
Inscription : septembre 2005
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 11
Points : 4
Points : 4
MErci, impeccable cela marche a merveille, suis con d'avoir oublié le
Code :
AND t.forum_id = f.forum_id
cela coulais de source, bon maintenant il ne me reste plus qu'a affiche le nom du forum d'origine de chaque message et ce serra parfait

si je comprend bien il me suffirai de recuperer le $topic_rowset['f.forum_name'].c'est bien cela ?
Hitmaaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 19h55   #8
Inactif
 
Avatar de Kerod
 
Inscription : septembre 2004
Messages : 11 753
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 11 753
Points : 14 585
Points : 14 585
Oui il reste plus qu'à récupérer le nom forum_name pas besoin de f. devant. Je sais pas comment te vas le mettre en forme mais moi je serai plus partant pour ne pas le mettre dans le lien. Tu vois comme ici tu as des tag résolu, ils sont pas dans le lien
Kerod est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2006, 20h03   #9
Invité de passage
 
Inscription : septembre 2005
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 11
Points : 4
Points : 4
Merci beaucoup ;-) , et hop, résolu
Hitmaaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h29.


 
 
 
 
Partenaires

Hébergement Web