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 :
Code:
1 2 3 4 ... 8 9 10 11
De l'aide serait appréciée.
Joyeuses fêtes!