Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Merci j'ai essayer ça marche 
Hors ligne
Bonjour
Je viens d'installer la mod Sous-Forum, qui marche très bien et est très pratique. Cependant, j'ai un soucis avec la pagination de mon forum parent : il m'indique 5 pages alors qu'il n'y en a qu'une seule.
Je vois bien d'où vient le problème : il divise le nombre de discussions présentes dans l'ensemble de ce forum (parent + enfants) par le nombre de discussions par page, et affiche le nombre de pages correspondants.
J'ai vu plus haut dans la discussion (je n'ai pas noté où
) qu'une personne avait réglé ce soucis, mais je n'ai pas vu la moindre explication.
Serait-il possible de rendre public la modification permettant de régler ce problème (ou de me fouetter jusqu'à la mort si j'ai mal lu et qu'elle a été postée...)
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Bon, j'ai pondu un bout de code qui permet de régler ce petit problème de nombre de pages.
#
#[Dans viewforum, chercher ~ ligne 70]
#
// Determine the topic offset (based on $_GET['p'])
#
#[ Ajouter après ]
#
$result2 = $db->query('SELECT count(*) AS nb_topics FROM '.$db->prefix.'topics WHERE forum_id='.$id);
$rep2 = $db->fetch_assoc($result2);
$cur_forum['num_topics'] = $rep2['nb_topics'];On doit sûrement pouvoir faire mieux. Si quelqu'un si connais mieux que moi et pouvait regarder si c'est correct (ça marche chez moi mais après il y a peut-être des optimisations à faire).
Dernière modification par fanf73 (11-03-2008 15:29:09)
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Bonjour,
j'ai installé le mod sous la version 1.2.17 et petit problème : mes sous forums sont présents dans les forums parents mais aussi sous la catégorie (hoooo la l'explication à 2 balles) visible ici : http://maison-du-prince.com/forums/ : sous la catégorie "sports, manisfestations, clubs, etc.." j'ai le forum "Ring" et "RCI" qui sont en fait des sous forums de "sports canin".
Bref je ne comprend pas se doublon ... si quelqu'un peu aider ?!?
merci d'avance
Hors ligne
Vérifie dans l'administration des forums si tu n'as pas ces forums en double.
Si ce n'est pas le cas, vérifie les modification apportée à l'index : tu as sûrement du oublier de modifier la requête de sélection des forums à afficher sur l'index.
Sert-toi du fichier lisez-moi pour ça 
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Vérifie dans l'administration des forums si tu n'as pas ces forums en double.
Si ce n'est pas le cas, vérifie les modification apportée à l'index : tu as sûrement du oublier de modifier la requête de sélection des forums à afficher sur l'index.
Sert-toi du fichier lisez-moi pour ça
Ok mon erreur venait bien d'une mauvaise manip. dans l'index ... maintenant ça roule !
Merci pour cette aide efficace rapide et PRO. .
Salutation à tous et encore UN GRAND MERCI !!!!!!!:D
Dernière modification par zham (15-03-2008 11:58:13)
Hors ligne
Bonjour à tous,
Quel galère ce problème de comptage des discussions et message sur l'index lorsqu'il y a des sous-forums.
J'ai localisé le problème, et je pense avoir trouvé une solution qui à l'air de marcher. Tout du moins, en test ça marche bien.
Il faut modifier le fichier include/function.php.
Trouver :
$sql = 'SELECT SUM(num_topics), SUM(num_posts), id FROM '.$db->prefix.'forums WHERE parent_forum_id = '.$id_papa.' AND id <> '.$forum_id.' GROUP BY id'; $result = $db->query($sql) or error($sql.'<br />Impossible de mettre à jour last_post/last_post_id/last_poster', __FILE__, __LINE__, $db->error()); # on compte le nombre de posts des fils de ce père if ($db->num_rows($result)) { while(list($num_topics_fils, $num_posts_fils, $id_fils) = $db->fetch_row($result)) { $num_posts_papa = $num_posts_papa + $num_posts_fils; $num_topics_papa = $num_topics_papa + $num_topics_fils; $result = $db->query('SELECT last_post, last_post_id, last_poster FROM '.$db->prefix.'topics WHERE forum_id='.$id_fils.' AND moved_to IS NULL ORDER BY last_post DESC LIMIT 1') or error('Impossible de retrouver last_post/last_post_id/last_poster', __FILE__, __LINE__, $db->error());Remplacer par :
$sql1 = 'SELECT SUM(num_topics), SUM(num_posts), id FROM '.$db->prefix.'forums WHERE parent_forum_id = '.$id_papa.' AND id <> '.$forum_id.' GROUP BY id'; $result1 = $db->query($sql1) or error($sql1.'<br />Impossible de mettre à jour last_post/last_post_id/last_poster', __FILE__, __LINE__, $db->error()); # on compte le nombre de posts des fils de ce père if ($db->num_rows($result1)) { while($line = $db->fetch_row($result1)) { $num_posts_papa = $num_posts_papa + $line[1]; $num_topics_papa = $num_topics_papa + $line[0]; $result = $db->query('SELECT last_post, last_post_id, last_poster FROM '.$db->prefix.'topics WHERE forum_id='.$line[2].' AND moved_to IS NULL ORDER BY last_post DESC LIMIT 1') or error('Impossible de retrouver last_post/last_post_id/last_poster', __FILE__, __LINE__, $db->error());En espérant que cette solution suffira pour enfin avoir le bon nombre de topic/message en page d'accueil.
Thierry
jai essayé et bien moi cest encore pire lorsque je fait un sous forum au lieu d'avoir 560 posts,et bien jai zero et meme lorsque j'enleve la manip jai zero post quand meme une idée svp merci.
et une soluce pour le probleme de comptage car cest un peut chiant
Hors ligne
bonjour j'ai un soucis....
Voila je viens de dl la version 1.2.17 de punbb et je n'arrive pas a installer ce mod sous forum avec cette version...
Quelqu'un a-t-il réussi? et comment?
Merci de votre aide 
Hors ligne
Si, elle est compatible : remonte de 14 messages. La question et la réponse y ont été postées.
Ou alors va voir le sujet épinglé dans le forum d'Entraide.
Dernière modification par fanf73 (05-04-2008 19:22:14)
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
salut !
Moi je voudrais deux petites midifications mais je ne sais pas comment faire 
1= Quand la page de viewforum s'affiche, je voudrais enlever les noms des modérateurs sur la page, comme sur mon index.
2= Quand la page de viewforum s'affiche, je voudrais afficherles noms des discussions dans la colonne de gauche, comme sur mon index.
Merci !
Hors ligne
Pour les deux réponses je ne saurais te répondre autre chose que de faire la même chose que pour un forum normal
.
Je ne pense pas qu'il y ai d'énorme différence dans le code, quasiment seuls les numéros de ligne changent.
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Les memes modifications que dans l'index mais dans le Vewforum c'est ca ?
Hors ligne
C'est ça oui
.
Pour masquer les modérateurs, les lignes doivent être exactement les mêmes.
Pour ce qui est d'afficher le titre de la discussion, tu ne pourras pas faire de copier/coller, mais en regardant ce qui est modifié dans l'index (fichier lisez-moi/readme) tu pourras sûrement rajouter ce qu'il faut là où il faut dans le viewforum.
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Ok, merci je vous tient au courant :-)
Hors ligne
C'est bon pour la liste des modérateurs !
Par contre, je n'arrive vraiment pas pour le sujet des posts a afficher...
En m'inspirant de ca :
http://wiki.punres.org/Last_post%27s_su … orum_index
J'ai ajouter "t.subject" dans la ligne de reglages MYSQL et puis j'ai remplacer le reste par ce qui est donné...
Ca n'a pas marché... Pourriez-vous m'aider ?
Hors ligne
Tu as rajouté
LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_idaprès
INNER JOIN '.$db->prefix.'forums AS f ON c.id=f.cat_id?
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Je me rend compte que le t.subject, je l'ai placé n'importe ou :-S Ce que j'ai fais jusque maintenant c'est remplacer :
// If there is a last_post/last_poster.
if ($cur_forum['last_post'] != '') {
$idmT = (isset($idmComp)) ? ' title="'.$idmComp.'"' : '';
$last_post = format_time($cur_forum['last_post']).'<br />dans <a href="viewtopic.php?pid='.$cur_forum['last_post_id'].'#p'.$cur_forum['last_post_id'].'"'.$idmT.'><em>'.$idm.'</em></a><br /><span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_forum['last_poster']).'</span>';
} else
$last_post = ' ';par
// If there is a last_post/last_poster.
if ($cur_forum['last_post'] != '')
$last_post = '<a href="viewtopic.php?pid='.$cur_forum['last_post_id'].'#p'.$cur_forum['last_post_id'].'">'.format_time($cur_forum['last_post']).'</a> <span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_forum['last_poster']).'</span>';
else
$last_post = ' ';
// Display the last topic
$idm = $cur_forum['subject'];
if(strlen($idm) > 30) {
$idmComp = str_replace('"', "''", $idm);
$idm = substr($idm, 0, 30).'...';
} else
$idmComp = '';Voila, maintenant je ne sais plus du tout quoi faire...
Et puis ce code
INNER JOIN '.$db->prefix.'forums AS f ON c.id=f.cat_idJe ne l'ai pas trouvé :-s
Dernière modification par forumdesados (14-04-2008 15:14:14)
Hors ligne
Normal que tu ne l'ai pas trouvé, il ne se trouve pas dans ce fichier.
Cherche ligne 93
$subforum_result = $db->query('SELECT forum_desc, forum_name, id, last_post, last_poster, last_post_id, moderators, num_posts, num_topics, redirect_url FROM '.$db->prefix.'forums WHERE parent_forum_id='.$id.' ORDER BY disp_position') or error('Impossible de sélectionner les informations du sous forum',__FILE__,__LINE__,$db->error());et remplace par
$subforum_result = $db->query('SELECT f.forum_desc, f.forum_name, f.id, f.last_post, f.last_poster, f.last_post_id, f.moderators, f.num_posts, f.num_topics, f.redirect_url, t.subject FROM '.$db->prefix.'forums AS f LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_id WHERE f.parent_forum_id='.$id.' ORDER BY disp_position') or error('Impossible de sélectionner les informations du sous forum',__FILE__,__LINE__,$db->error());ça devrait marcher.
Pour le reste tout doit être bon je pense
Dernière modification par fanf73 (14-04-2008 15:21:09)
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
J'ai remplacé mais ca n'affiche rien maintenant 
J'ai fais exactement ce qui precede...
Merci beaucoup
???
Hors ligne
Il ne t'affiche pas une seule erreur ? 
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Non non pas d'erreur
Regarde : http://forumdesados.net/viewforum.php?id=72
Hors ligne
C'est bizarre : ça affiche rien alors que la source est pas mal pleine
.
J'ai oublié un truc dans le code que je viens de te donner, colle à nouveau la requête que j'ai posté.
Si c'est toujours pas ça remet la version du viewforum sans l'affiche du nom des discussions pour ne pas bloquer tes membres
.
EDIT :
Dans le reste de la modification, il faut changer le nom de la variable contenant les infos sur les sous-forums : ce n'est pas $cur_forum mais $cur_subforum
Dernière modification par fanf73 (14-04-2008 15:29:29)
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Ca ne marche toujours pas 
J'ai remis le vieux viewtopic, j'ai gardé le modifié sous la main (on sait jamais si quelqu'un peut m'aider)
Voici le code ou ca cloche :
$page_title = pun_htmlspecialchars($pun_config['o_board_title'].' / '.$cur_forum['forum_name']);
define('PUN_ALLOW_INDEX', 1);
require PUN_ROOT.'header.php';
$subforum_result = $db->query('SELECT f.forum_desc, f.forum_name, f.id, f.last_post, f.last_poster, f.last_post_id, f.moderators, f.num_posts, f.num_topics, f.redirect_url, t.subject FROM '.$db->prefix.'forums AS f LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_id WHERE f.parent_forum_id='.$id.' ORDER BY disp_position') or error('Impossible de sélectionner les informations du sous forum',__FILE__,__LINE__,$db->error());
if($db->num_rows($subforum_result))
{
?>
<div class="linkst">
<div class="inbox">
<ul><li><a href="index.php"><?php echo $lang_common['Index'] ?></a> </li><li>» <?php echo pun_htmlspecialchars($cur_forum['forum_name']) ?></li></ul>
<div class="clearer"></div>On ne sait jamais, peut etre que j'ai fait une erreur en recopiant...
Hors ligne
Avec cette requête
$subforum_result = $db->query('SELECT f.forum_desc, f.forum_name, f.id, f.last_post, f.last_poster, f.last_post_id, f.moderators, f.num_posts, f.num_topics, f.redirect_url, t.subject FROM '.$db->prefix.'forums AS f LEFT JOIN '.$db->prefix.'topics AS t ON t.last_post_id=f.last_post_id WHERE f.parent_forum_id='.$id.' ORDER BY disp_position') or error('Impossible de sélectionner les informations du sous forum',__FILE__,__LINE__,$db->error());Et ce code pour remplacer ensuite
// Display the last topic
$idm = $cur_subforum['subject'];
if(strlen($idm) > 30) {
$idmComp = str_replace('"', "''", $idm);
$idm = substr($idm, 0, 30).'...';
} else
$idmComp = '';
// If there is a last_post/last_poster.
if ($cur_subforum['last_post'] != '') {
$idmT = (isset($idmComp)) ? ' title="'.$idmComp.'"' : '';
$last_post = format_time($cur_subforum['last_post']).'<br />dans <a href="viewtopic.php?pid='.$cur_subforum['last_post_id'].'#p'.$cur_subforum['last_post_id'].'"'.$idmT.'><em>'.$idm.'</em></a><br /><span class="byuser">'.$lang_common['by'].' '.pun_htmlspecialchars($cur_subforum['last_poster']).'</span>';
} else
$last_post = ' ';ça marche très bien chez moi
.
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Ca marche tres bien je te remercie infiniement !
Maintenant, je vais chercher la solution a ce maudit decompte de messages xD
Merci encore fanf73
Hors ligne