Fonction php nombre de pages
aneantisseur
Messages postés
385
Date d'inscription
Statut
Membre
Dernière intervention
-
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Alain_42 Messages postés 5361 Date d'inscription Statut Membre Dernière intervention -
Salut, je suis en train de coder une fonction php qui me servira à calculer le nombre de pages en fonction du nombre de messages que je veux sur une page.
Le code :
$nombre correspond au nombre de messages que je veux sur une seule page
$colonne correspond au nombre d'entrées
$table correspond à la table
Le problème, c'est que cette fonction ne m'affiche que le lien vers la dernière page.
Un exemple : Je veux 5 messages par page, il y en a 7 dans la table et bien ca ne m'affichera qu'un seul lien qui pointera vers la page n°2.
Je ne voit pas ce qui cloche.
Merci.
Le code :
function pages($nombre, $colonne, $table) { $nombreDeMessagesParPage = $nombre; $retour = mysql_query('SELECT COUNT(*) AS '.$colonne.' FROM '.$table.''); $donnees = mysql_fetch_array($retour); $totalDesMessages = $donnees[$colonne]; $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); for ($i = 1 ; $i <= $nombreDePages ; $i++) { $retour = '<a href="index.php?page=' . $i . '">' . $i . '</a>'; } return $retour; }
$nombre correspond au nombre de messages que je veux sur une seule page
$colonne correspond au nombre d'entrées
$table correspond à la table
Le problème, c'est que cette fonction ne m'affiche que le lien vers la dernière page.
Un exemple : Je veux 5 messages par page, il y en a 7 dans la table et bien ca ne m'affichera qu'un seul lien qui pointera vers la page n°2.
Je ne voit pas ce qui cloche.
Merci.
A voir également:
- Fonction php nombre de pages
- Fonction si et - Guide
- Nombre de jours entre deux dates excel - Guide
- Impossible de supprimer une page word - Guide
- Word nombre de pages - Guide
- Fonction moyenne excel - Guide
1 réponse
<?php function pages($nombre, $colonne, $table) { $nombreDeMessagesParPage = $nombre; //ce n'est pas une bonne idee d'utiliser le meme nom de variable $retour pour deux choses différentes $requette = mysql_query('SELECT COUNT(*) FROM '.$table.''); //je ne vois pas ce que vient faire le nombre d'entrees $colonne dans la requette qui sert justement a rechercher ce nombre $donnees = mysql_fetch_row($requette); $totalDesMessages = $donnees[0]; $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); //ensuite tu faisait une boucle qui cahrgeait à chaque fois la variable $retour donc qui écrasait la valeur précédente //soit tu utilises un array pour le retour de la fonction $retour=array(); for ($i = 1 ; $i <= $nombreDePages ; $i++) { $retour[] = '<a href="index.php?page=' . $i . '">' . $i . '</a>'; } // OU tu concatènes les liens comme ci dessous /* $retour=""; for ($i = 1 ; $i <= $nombreDePages ; $i++) { $retour.= '<a href="index.php?page=' . $i . '">' . $i . '</a>'; $retour.='<br />'; // ou ' ' //pour un espace ou tu mets ce que tu veux pour déparer les liens } */ return $retour; }