Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2862 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Listing de réponses d'une requête sur plusieurs pages

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Listing de réponses d'une requête sur plusieurs pages

n°188541
Thocan
La loi du silence
Posté le 02-08-2002 à 09:57:44  profilanswer
 

Salut,
 
Je suis débutant en php et je dois faire la chose suivante :
j'ai une requête SQL toute simple (select toto from table where titi=0)
je veux afficher les résultats dans un tableau (ça, je sais faire).
Mais où je ne sais comment m'y prendre, c'est pour n'afficher dans la page principale que les 20 premières réponses, puis dans une deuxième les 20 suivantes etc. avec en bas de chaque page, le n° des pages de réponses affectées d'un lien.
Bref, un truc très simple.
Mais j'aimerai faire ça le plus proprement possible...
(et me connaissant, ça risque de ne pas être le cas!  ;) )
 
Merci d'avance

mood
Publicité
Posté le 02-08-2002 à 09:57:44  profilanswer
 

n°188544
kayasax
Posté le 02-08-2002 à 10:06:51  profilanswer
 

un peu de pub pour master Sh@rdar : une de ses reponses sur mon topic sur les forums :
 

Citation :


tu as deux options :
 
1-faire des flèches SUIVANT/PRECEDENT
 
soit :
 
$nmpp = 10;  // le nombre de message par page
$ntotal= 50; // le nmbre total de résultat à afficher (ça vient d'une requête COUNT() sur l'ensemble des posts)
// $début c'est le n° du premier post à afficher
 
dans ta requête qui sert à afficher la page en cours
tu as la clause LIMIT $début,$nmpp  
 
<?
// on démarre au post 0 par défaut
if (!isset($debut)) $début =0;
 
//  si le numéro du premier post  affiché est supérieur au nombre  
// de post par page, on affiche le lien "PRECEDENT"
//  
if ($debut >= $nmpp) echo "<a href=\"tapage.php?debut=". ($debut-$nmpp)."\">PRECEDENT</a>";
 
 
// si il reste encore des posts après le post en cours,
// on affiche le lien "SUIVANT"
if ($debut + $nnp < $ntotal) { echo "<a href=\"tapage.php?debut=".($debut+$nnp)."\">SUIVANT</a>";
?>
 
 
2 - Afficher directement toutes les pages pour proposer un accès direct (comme sur le forum HFR)
 
soit :
 
$nmpp = 10;  // le nombre de message par page
$ntotal= 50; // le nmbre total de résultat à afficher
// $npage c'est le n° de la page en cours
 
dans ta requête qui sert à savoir quels messages tu dois afficher sur la page
tu as une clause LIMIT ($npage*$nmpp),$nmpp
 
<?
// on démarre à la page 0
if (!isset($npage)) $npage =0;
 
 
// on boucle pour afficher chacun des liens correspondant à une page
 
for ($i=0; $i<$ntotal/$nmpp; $i++) {
 
 // si la page en cours est différent on affiche le lien pour y accèder
 if ($i<>$npage) echo " <a href=\"tapage.php?npage=$i\">".$i+1."</a>  
 
 // sinon on affiche juste le n° de page
 else echo $i+1;
 
}
?>  
 


---------------
All we need is a soul revolution
n°188546
Thocan
La loi du silence
Posté le 02-08-2002 à 10:17:30  profilanswer
 

Et pour l'affichage du tableau sur chaque page :
1ère page : 20 premières réponses
2ème page : 20ème à 40ème réponse
etc.
 
Comment dois-je modifier ma requête ?
(pour récupérer uniquement une partie des réponses)
 
Merci en tous cas !  :jap:

n°188551
format_c
Plouf plouf ...
Posté le 02-08-2002 à 10:35:34  profilanswer
 

Thocan a écrit a écrit :

Et pour l'affichage du tableau sur chaque page :
1ère page : 20 premières réponses
2ème page : 20ème à 40ème réponse
etc.
 
Comment dois-je modifier ma requête ?
(pour récupérer uniquement une partie des réponses)
 
Merci en tous cas !  :jap:  




Tu mets une variable que tu incrémente (ou décrémente) de 20 quand tu cliques sur suivant (ou précédent).
Tu rajoute dans ta requete cette variable (là ou commencera l'affichage) et Limit 20

n°188603
Thocan
La loi du silence
Posté le 02-08-2002 à 11:29:43  profilanswer
 

Oki. Thanks, je vais essayer avec ça.  :jap:

n°188803
Thocan
La loi du silence
Posté le 02-08-2002 à 15:00:49  profilanswer
 

Nickel. Un grand merci !  :)

n°188808
format_c
Plouf plouf ...
Posté le 02-08-2002 à 15:12:02  profilanswer
 

2Rien  :hello:

n°188820
gboboye
je ne suis un pitre
Posté le 02-08-2002 à 15:26:00  profilanswer
 

ca fait plaisir que t pose cette question et qu un gentil phpeiste t repondu car moi aussi je cherchais ce systeme
 :love:


---------------
-= La force n est plus en moi... =-
n°188837
Thocan
La loi du silence
Posté le 02-08-2002 à 15:59:01  profilanswer
 

Bahh... y'a tout de même quelques correctifs à y apporter mais au moins j'avais l'essentiel de la trame...
 
Sinon, Dieu seul sait ce que j'aurai inventé...  :sarcastic:  :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Listing de réponses d'une requête sur plusieurs pages

 

Sujets relatifs
[XML-XSLT] réunir plusieurs arborescences en une seule non redondantecomment faire un IF ( ){ } avec plusieurs conditions?
probleme de date dans les requeteProblème requête MySql avec un ";" dedans (un peu de PHP aussi)
[PHP] Pour savoir si une requete SQL a ete executee ou non ? [OK ]Une conditionnelle dans une requête SQL ?
[Java] Requete au proxy sans resolution DNSje veux passer une heure dans une requete
[Access 2000]-Pb avec requete paramétréerequete sql
Plus de sujets relatifs à : Listing de réponses d'une requête sur plusieurs pages


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR