[RESOLU] Pagination

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Pagination

Re: Pagination

par Michel6359 » 21 mai 2015, 20:09

Merci :D ça fonctionne deux jour que je galère :( , le seule soucis c'est que maintenant il affiche la pagination de 1 à 10 mais après 1 à 20 et 1 à 30 ect... mais ce que je voudrais c'est que la pagination après soit 10 à 20 , 20 à 30 ..ect... et suivant / précédent . Sinon arriver à 20 ma pagination prend 2, 3 ligne et pas terrible .

Merci encore =D>

Re: Pagination

par Saian » 21 mai 2015, 17:21

Salut Michel6359, oui à priori tu devrais utiliser $page et non $start_from.

Re: Pagination

par Michel6359 » 20 mai 2015, 11:32

Bonjour

De retour après un déplacement pour le travail

Je viens d'essayer plusieurs fois j'ai bien de 0 à 10 mais quand je clic sur 10 je passe de 450 à 460
J'ai toujours rien compris :oops:
<?php  
   $sql = "SELECT COUNT(id) FROM Matériels";  
   $rs_result = mysql_query($sql);  
   $row = mysql_fetch_row($rs_result);  
   $total_records = $row[0];  
    $total_pages = 10;  
   $pagLink = "<div class='pagination pagination-sm pull-right push-down-20 push-up-20'>";  
    for ($i=$start_from;  
   $i <= $start_from+10;$i++) { 
   $pagLink .= "<li><a href='Accueil2015.php?action=1&page=".$i."'>".$i."</a></li>";
   }
   echo $pagLink . "</div>";  
   }
   ?>
Merci

Re: Pagination

par Michel6359 » 01 avr. 2015, 18:03

Bonjour
Merci beaucoup pour ton aide , je vais voir pour faire ça .
:)
Bonne continuation

Re: Pagination

par Ryle » 01 avr. 2015, 16:31

Hello !

En fait, il suffit que dans ta boucle for(), la valeur de fin soit 10 au lieu de $total_pages. Ceci étant, ta pagination ne proposerait alors que les 10 premières pages, quelque soit la page que tu consultes. Il serait donc plus sympa de ne pas boucler de 1 à 10, mais de $i = $start_from, tant que $i <= $start_from+10

Si tu commences à la page 0, tu auras les 10 premières pages. Si tu ouvres la 10e page, tu auras alors les pages 10 à 20.

Il faudra alors ajuster pour pouvoir revenir de la page 10 vers les pages précédentes et ne pas proposer les pages 150 à 160 si tu n'as que 154 pages :)
Par exemple :
- partir de $i = max(1, $start_from - 5) // afficher les 5 pages précédentes si elles existent)
- tant que $i <= min ($total_pages, $start_from + 10) // afficher les 10 pages suivantes si elles existent

Pagination

par Michel6359 » 30 mars 2015, 20:48

Bonsoir , j'ai une pagination simple sur affichage de ma base des données , mais le problème c'est que cela affiche 154 pages je voudrais qu'il affiche que 10 pages à la fois et suivant pour afficher les autres page .

Mais je ne vois pas comment faire simple , merci pour votre aide.
<?php   $limit = 50;  
   if (isset($_GET["page"])) { $page  = $_GET["page"]; } else { $page=1; };  
   $start_from = ($page-1) * $limit; 
?>


Puis affichage des pages :

Requetes :
$materiels = mysql_query("SELECT * FROM materiels ORDER BY date_maj DESC LIMIT ".$start_from.", ".$limit."");?>
$sql = "SELECT COUNT(id) FROM materiels";  
    $rs_result = mysql_query($sql);  
    $row = mysql_fetch_row($rs_result);  
    $total_records = $row[0];  
    $total_pages = ceil($total_records / $limit);  
    $pagLink = "<div class='pagination'>";  
    for ($i=1; $i<=$total_pages; $i++) {  
    $pagLink .= "<li><a href='Accueil2015.php?action=1&page=".$i."'>".$i."</a></li>";
    };  
    echo $pagLink . "</div>";
Merci d'avance pour aide