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
| // Numéro de la page à afficher
//on verifie si la variable $pg est definie, sinon on l'initialise a 1
if(!isset($_GET['page'])){$page = 0;}
else{$page = $_GET['page'];}
//on verifie si la variable qui est censée être un numero de page
// est bien un chiffre pour éviter une injection mysql
if(!is_numeric($page)){$page = 0;}
// Nombre de résultats par page
$nb = 12;
// Assure au moins $nb résultats par page
if(isset($_GET['nb'])) {
$nb = max(intval($_GET['nb']), $nb);
}
// Nombre total d'enregistrements
$sql = 'SELECT COUNT(*) FROM identification WHERE actif = 1;';
$query = mysql_query($sql, $connexion)
or die('Erreur MySQL : '.mysql_error());
$row = mysql_fetch_row($query);
$total = $row[0];
// Nombre maximum de pages (ceil arrondit au nombre supérieur)
$max_pg = ceil($total / $nb);
// Selection des enregistrements pour la page considérée
$sql = 'SELECT id_membre, date_naissance, pseudo, id_pays, id_ville,
actif FROM identification
WHERE actif = 1 ORDER BY RAND() LIMIT '.($page * $nb).','.$nb.''
or die('Erreur MySQL : '.mysql_error());
$query = mysql_query($sql, $connexion)
or die('Erreur MySQL : '.mysql_error());
while($list = mysql_fetch_assoc($query)) {
// affichage des enregistrements
} // Fin du while
mysql_close();
// Les liens de pagination (1,2,3, etc)
for($i = 0 ; $i < $max_pg ; $i++) {echo ' <a href="?page='.$i.'&nb='.$nb.'">'.($i+1).'</a>';}
?> |
Partager