Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Bonjour,
Vous faites quoi là, maintenant ? [ 1 2 3 … 32 ]
L'exemple se trouve ci-dessus, les forumers aimeraient qu'au lieu d'avoir [ 1 2 3 … 32 ], cela soit plutôt [ 1 2 … 33 32 ], cad les 2 premiers et les 2 derniers...
Comment faire ?
L'adresse de mon forum : http://www.insidebasket.com/forum
Merci à vus
Hors ligne
Bonjour,
tres bonne requete, mieux encore, comment ajouter un bouton < SUIVANT > / < PRECEDENT > ?
Ou alors carrement un menu deroulant pour choisir la page?
Hors ligne
@Mattt07
Essaie de remplacer la fonction "paginate" dans le fichier functions.php par le code suivant. Je n'ai pas pu le tester donc fait des tests en local :
Voir plus bas, cette modif ne fonctionnait pas___________________________________
@venuxweb
Dans le fichier functions.php, chercher
if ($num_pages <= 1)
$pages = array('<strong>1</strong>');
else
{Ajouter après
if($cur_page != 1)
$pages[] = '<a href="'.$link_to.'&p='.($cur_page-1).'">Précédent</a>';Chercher
if ($cur_page <= ($num_pages-3))
{
if ($cur_page != ($num_pages-3))
$pages[] = '…';
$pages[] = '<a href="'.$link_to.'&p='.$num_pages.'">'.$num_pages.'</a>';
}Ajouter après
if($cur_page != $num_pages)
$pages[] = '<a href="'.$link_to.'&p='.($cur_page+1).'">Suivant</a>';Idem, à tester en local au cas où
Dernière modification par fanf73 (12-10-2009 22:46:41)
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 et tout d'abord merci de ton aide fanf73
J'ai testé alors cela fonctionne mais petit soucis du genre :
Inside Basket sur Google Map par Mattt07 [ 1 2 2 3 ]
La 2ème page 2 est répétée deux fois... au lieu de :
Inside Basket sur Google Map par Mattt07 [ 1 2 3 ]
Hors ligne
Essaie avec ça : cherche
return implode(' ', $pages);Ajoute avant
if(count($pages) == 4)
$pages = array_unique($pages);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
grand merci fanf73, c'est exactement ce que je voulais !
Hors ligne
Il y a encore un soucis quand on est en page 3 d'un gros topic (ou en avant-avant dernière page) http://www.insidebasket.com/forum/viewt … id=436&p=3 mais je ne vois pas trop quoi
. J'essaierai de tout reprendre pour voir où ça bloque si j'ai le temps mais rien n'est sûr.
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
ah oui en effet, bien vu...
bon je laisse comme cela pour le moment car malgré tout, cela fonctionne puis dés que tu as la solution, de tte façon je suis abonné ici.
Merci en tout cas pour ta disponibilité et gentillesse
Hors ligne
@venuxweb
Dans le fichier functions.php, chercher
if ($num_pages <= 1) $pages = array('<strong>1</strong>'); else {Ajouter après
if(cur_page != 1) $pages[] = '<a href="'.$link_to.'&p='.($cur_page-1).'">Précédent</a>';Chercher
if ($cur_page <= ($num_pages-3)) { if ($cur_page != ($num_pages-3)) $pages[] = '…'; $pages[] = '<a href="'.$link_to.'&p='.$num_pages.'">'.$num_pages.'</a>'; }Ajouter après
if(cur_page != $num_pages) $pages[] = '<a href="'.$link_to.'&p='.($cur_page+1).'">Suivant</a>';Idem, à tester en local au cas où
Merci pour ton aide, juste que [ Précédent 1 2 3 Suivant ] s'affiche dans le Viewforum pour les topics ayant plusieurs pages 
Aurais-tu une solution ?
Merci
Hors ligne
Il faudrait tester l'adresse des liens et le script actuellement en cours 
Il y a deux erreurs dans mon code, j'ai oublié deux fois le "$" devant la variable "cur_page", dans les tests
if($cur_page != $num_pages)
if($cur_page != 1)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
Cela s'applique aussi à mon problème fanf73?
Hors ligne
Merci, j'ai bien fait les modifications en ajoutant $
Maintenant le "Precedent" a disparu, mais j'ai tjrs le "Suivant" qui s'inscrit dans le Viewforum :
[ 1 2 3 4 Suivant ]
Hors ligne
non, Mattt07 ça ne s'applique pas à ton soucis, il est plus complexe et je n'ai pas encore eu le temps de chercher.
Je pense par contre avoir trouvé pour ne pas afficher "Précédent" et "Suivant" dans la liste des topics d'un forum.
Dans le fichier functions.php, chercher
if ($num_pages <= 1)
$pages = array('<strong>1</strong>');
else
{Ajouter après
if($cur_page != 1 && !$link_to_all)
$pages[] = '<a href="'.$link_to.'&p='.($cur_page-1).'">Précédent</a>';Chercher
if ($cur_page <= ($num_pages-3))
{
if ($cur_page != ($num_pages-3))
$pages[] = '…';
$pages[] = '<a href="'.$link_to.'&p='.$num_pages.'">'.$num_pages.'</a>';
}Ajouter après
if($cur_page != $num_pages && !$link_to_all)
$pages[] = '<a href="'.$link_to.'&p='.($cur_page+1).'">Suivant</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
Enorme !! Merci beaucoup 
Reglé pour ma part
Hors ligne
Je pense avoir résolu le soucis pour Mattt07 également, de manière empirique donc ne me demandait pas à moi non plus comment ça fonctionne (cf le commentaire déjà présent dans cette fonction).
Attention : le nombre de numéros de page affichés est plus important que d'habitude et il se peut que ça se chevauche avec le "fil d'ariane" si votre forum n'est pas très large, et plus encore si vous ajouter les liens "Suivantss & Précédent".
Voici le code complet :
//
// Generate a string with numbered links (for multipage scripts)
//
function paginate($num_pages, $cur_page, $link_to)
{
$pages = array();
$link_to_all = false;
// If $cur_page == -1, we link to all pages (used in viewforum.php)
if ($cur_page == -1)
{
$cur_page = 1;
$link_to_all = true;
}
if ($num_pages <= 1)
$pages = array('<strong>1</strong>');
else
{
if ($cur_page > 2)
{
$pages[] = '<a href="'.$link_to.'&p=1">1</a>';
if ($cur_page != 3)
{
$pages[] = '<a href="'.$link_to.'&p=2">2</a>';
if($cur_page != 4)
$pages[] = '…';
}
}
// Don't ask me how the following works. It just does, OK? :-)
for ($current = $cur_page - 1, $stop = $cur_page + 2; $current < $stop; ++$current)
{
if ($current < 1 || $current > $num_pages)
continue;
else if ($current != $cur_page || $link_to_all)
$pages[] = '<a href="'.$link_to.'&p='.$current.'">'.$current.'</a>';
else
$pages[] = '<strong>'.$current.'</strong>';
}
if ($cur_page <= ($num_pages-2))
{
if ($cur_page != ($num_pages-2) && $cur_page != ($num_pages-3))
$pages[] = '…';
if($cur_page < $num_pages-2 && $num_pages != 3)
$pages[] = '<a href="'.$link_to.'&p='.($num_pages-1).'">'.($num_pages-1).'</a>';
$pages[] = '<a href="'.$link_to.'&p='.$num_pages.'">'.$num_pages.'</a>';
}
}
return implode(' ', $pages);
}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
Merci fanf73, je pense que pour mon forum cela ne pose pas de problème
c'est nickel il me semble 
Hors ligne