Bonjour,
J'essaie en vain de mettre en place un affichage multi page sur mon composant annuaire de joomla (peoplebook). Seule ma première page avec mes 5 premiers résultats s'affiche. Quand je clique sur suivant ou sur un numéro de page, ça revient toujours à cette même page avec les 5 premiers résultats. Comment faire pour que $position s'incrémente correctement?
Voilà le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
$result = mysql_query( "SELECT * FROM jos_peoplebook");
$nombre_commentaires = mysql_num_rows($result);
 
 
$nombre_par_page = 5;  // on va afficher 5 résultats par page.
$nombre_de_pages=intval(($nombre_commentaires-1)/$nombre_par_page)+1;
   if ($position=="") $position=0;
   $page_courante=intval(($position/$nombre_commentaires)*$nombre_de_pages)+1;
 
 
   // AFFICHAGE DU NOMBRE DE COMMENTAIRES
   print ("<center>");
   print ("( $nombre_commentaires membre");
   if ($nombre_commentaires>1) print ("s");
   print (" )<br>");
 
   // AFFICHAGE DU PREV
   if ($page_courante!="1")
   {
      $nouvelle_position=(($page_courante-1)*$nombre_par_page)-$nombre_par_page;
      print ("<a href=cette_page.php?position=$nouvelle_position>");
 
   }
   print ("prec");
   if ($page_courante!="1") print ("</a>");
   print (" ");
 
   // AFFICHAGE DES PAGES 1 A 5
   $i=1; while ($i<6)
   {
      if ($nombre_de_pages>($i-1) && $page_courante!="$i")
      {
         $new_pos=$nombre_par_page*($i-1);
         print ("<a href=index.php?option=com_peoplebook&Itemid=47?position=$new_pos>");
 
      }
      print ("$i");
      if ($nombre_de_pages>($i-1) && $page_courante!="$i") { print ("</a>"); }
      print (" ");
      $i++;
   }
 
   // AFFICHAGE DU NEXT
   if ($nombre_de_pages>$page_courante)
   {
      $nouvelle_position=(($page_courante+1)*$nombre_par_page)-$nombre_par_page;
      print ("<a href=index.php?option=com_peoplebook&Itemid=47?position=$nouvelle_position>");
 
   }
    print ("suiv");
   if ($nombre_de_pages>$page_courante) print ("</a>");
 
   print ("<br><br></center>");
 
 
 
      #Prepare Content
      if( !isset($search) || $search == '' ) {
	    $database->setQuery("SELECT * FROM #__peoplebook WHERE published='1' AND catid='$row1->id' ORDER BY LOWER($sort_field) $sort_order LIMIT ".$position.",".$nombre_par_page."");
            $srows = $database->loadObjectList();
      }
      else {
      	   if ( !is_array($search) ) {
	      $search_cour = $search." AND published='1' AND catid='$row1->id' ORDER BY LOWER($sort_field) $sort_order LIMIT ".$position.",".$nombre_par_page."";
  	      $database->setQuery($search_cour);
    	      $srows = $database->loadObjectList();
           }
           else {
       	      foreach ($search as $search_line) {
	         $search_cour = $search_line." AND published='1' AND catid='$row1->id' ORDER BY LOWER($sort_field) $sort_order LIMIT ".$position.",".$nombre_par_page."";
  	      	 $database->setQuery($search_cour);
    	      	 $srows += $database->loadObjectList();
	      }
           }
      }