Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
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 09/12/2011, 04h38   #1
Membre du Club
 
Inscription : janvier 2010
Messages : 317
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 317
Points : 62
Points : 62
Par défaut Limité les numéros de page (pagination)

Bonjour.

Je me suis créé une pagination à partir d'un exemple et qui fonctionne bien. Sauf que je voudrais limiter le nombre de numéro de page en mettant des "..." dans le milieux.

Le code exemple est :
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
<?php 
if (isset($_GET["page"])) { $page  = $_GET["page"]; } else { $page=1; }; 
$start_from = ($page-1) * 20; 
$sql = "SELECT * FROM students ORDER BY name ASC LIMIT $start_from, 20"; 
$rs_result = mysql_query ($sql,$connection); 
?> 
<table>
<tr><td>Name</td><td>Phone</td></tr>
<?php 
while ($row = mysql_fetch_assoc($rs_result)) { 
?> 
            <tr>
            <td><? echo $row["Name"]; ?></td>
            <td><? echo $row["PhoneNumber"]; ?></td>
            </tr>
<?php 
}; 
?> 
</table>
<?php 
$sql = "SELECT COUNT(Name) FROM students"; 
$rs_result = mysql_query($sql,$connection); 
$row = mysql_fetch_row($rs_result); 
$total_records = $row[0]; 
$total_pages = ceil($total_records / 20); 
 
for ($i=1; $i<=$total_pages; $i++) { 
            echo "<a href='pagination.php?page=".$i."'>".$i."</a> "; 
}; 
?>
Ne limite pas le nombre de numéro de page et si j'ai des centaines de pages, ça pose un problème d'affichage. Je suis bloqué sur ça.

L'affichage que je souhaite :
De l'aide serait appréciée.

Joyeuses fêtes!
__________________
dancom5 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 08h21   #2
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 994
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 994
Points : 5 787
Points : 5 787
Envoyer un message via Skype™ à jreaux62
Bonjour,
dans ce style (5 avant, 5 après) :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
			// PAGINATION
			if($nbreTotalPages > 1) {
			echo ' |';
			  for ($i=1; $i<=$nbreTotalPages; $i++)
			  {
				if($i==1 || (($page-5)<$i && $i<($page+5)) || $i==$nbreTotalPages)
				{
					if($i==$nbreTotalPages && $page<($nbreTotalPages-5)) { echo '...|'; }
					if ($i == $page) { echo ' <b>page '.$i.'</b> |'; }
					else { echo ' <a href="pagination.php?page='.$i.'" title="page '.$i.'">'.$i.'</a> |'; }
					if($i==1 && $page>6) { echo '...'; }
				}
			  }
			} 	// (fin if)
?>
-> Créer un système de pagination automatique en PHP
A adapter...
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 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 01h11.


 
 
 
 
Partenaires

Hébergement Web