Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
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 29/03/2007, 12h13   #1
Membre habitué
 
Avatar de Alexandrebox
 
Inscription : août 2006
Messages : 613
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 613
Points : 107
Points : 107
Par défaut Faire une pagination avec lien suivant et précédent

Bopnjour les amies et les amis,

Je cherche à complèter mon code de pagination. J'ai adapté le code que j'ai pris à quelque part. Je l'utilise depuis et li marche nickel.

Il affiche: 12345678 j'usqu'à l'infini sans s'arrêter. Ce que j'aimerais faire, c'est d'afficher seulement 10 chiffres et d'ajouter précédent et suivant au début et à la fin. Ce qui est souvent utilisé sur des sites.

J'ai vu un code qui traite ça, mais il est impréhensible. Quelqu'un pourra m'aider à complèter mon code ci-joint ? Merci à âme sympathique.

P.S. Voici la partie du code qui affiche la pagination
Code :
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
 
<?php 
$pg = 0;//Variable de la page
$nbPages = ($totalPages_Recordset1 +1); //nombre total de pages 
$nbCol = 10; // nombres de colonnes souhaitées 
 
// on calcule s'il y a un reste de division 
$reste = $nbPages-floor($nbPages/$nbCol)*$nbCol; 
$fermeTd = $nbCol-$reste; 
 
// on démarre l'affichage 
if($nbPages > 1){
echo '<table ><tr>'; 
for($compteur=1; $compteur<=$nbPages; $compteur++){ 
 
   if($compteur == $pg2){
   $pagine ="<font color=red size =\" 2 \" face =\" arial \"><strong> $compteur </strong></font>";
   }
   else{
$pagine = "<font color= black size =\" 2 \" face =\" arial \"> $compteur </font>";
   }
 
echo "<td width = \"14\" height = \"20\" valign = \"middle\">";
echo "<div align = \"center\">";
echo "<a href = \" category.php?pg=$pg&ID=$ID\">";
echo $pagine;
echo "</a>";
echo "</div>";
echo "</td>";
$pg++;
if($compteur%$nbCol==0) { 
echo '</tr>'; 
 } 
} 
// on pourrait s'arrêter ici, mais si la division n'est pas juste, on va se retrouver avec des <td></td> manquants. 
// Donc on boucle pour fermer correctement le dernier <tr> 
if($reste>0){ 
for($j=0;$j<$fermeTd;$j++){ 
echo '<td></td>'; 
} 
echo '</tr>'; 
} 
 
// on ferme la table 
echo '</table>'; 
}
 
?>
Alexandrebox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2007, 13h50   #2
Membre éprouvé
 
Homme
Inscription : avril 2005
Messages : 611
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Turquie

Informations forums :
Inscription : avril 2005
Messages : 611
Points : 459
Points : 459
ben logiquement tu sait sur quel page tu te trouve donc tu fait un lien

($pg -1) et ($pg +1) pour faire tes liens

et tu ne peux pas faire çà en début de ton script:
$pg = 0;//Variable de la page

il faudrai faire :
Code :
1
2
3
4
5
6
 
if(!empty($_GET['pg'])){
$pg = $_GET['pg'];
}else{
$pg = 0;
}
maximenet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2007, 17h35   #3
Membre habitué
 
Avatar de Alexandrebox
 
Inscription : août 2006
Messages : 613
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 613
Points : 107
Points : 107
Merci pour ton conseil. J'éviterai de faire $pg = 0; et plutot faire comme tu l'as montré.

Cependant, Je ne vois pas où et comment faire afficher précédent et suivant après 10 chiffres.

Merci de m'aider
Alexandrebox est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h36.


 
 
 
 
Partenaires

Hébergement Web