par
Ryle » 31 mars 2007, 14:14
Dans la mesure ou ta requête ne te ramenes que $results_pg enregistrements, tu peux difficilement savoir s'il y a d'autres enregistrements ou pas dans ta base.
Si tu trouves effectivement moins de $results_pg résultats, tu peux effectivement savoir qu'il n'y en aura plus après, mais si tu tombes sur $results_pg impossible de savoir s'il y en a encore après ou pas.
Ton $totalRows devrait contenir le nombre total d'enregistrement correspondant à ta recherche (SELECT COUNT(*)) te permettant de savoir s'il y aura d'autres résultats.
Ceci dit, pour éviter de rejouer ta requête qui doit déjà être assez gourmande comme ça, il te suffit de ramener un enregistrement de plus dans le LIMIT : LIMIT ".$limit.",". ($results_pg+1);
Ainsi, tu ne joueras ta requête qu'une fois, et si le nombre d'enregistements retournés est supérieur à $results_pg, alors il te suffit de ne pas afficher le dernier (suffit d'un compteur) et de proposer le lien page suivante

Dans la mesure ou ta requête ne te ramenes que $results_pg enregistrements, tu peux difficilement savoir s'il y a d'autres enregistrements ou pas dans ta base.
Si tu trouves effectivement moins de $results_pg résultats, tu peux effectivement savoir qu'il n'y en aura plus après, mais si tu tombes sur $results_pg impossible de savoir s'il y en a encore après ou pas.
Ton $totalRows devrait contenir le nombre total d'enregistrement correspondant à ta recherche (SELECT COUNT(*)) te permettant de savoir s'il y aura d'autres résultats.
Ceci dit, pour éviter de rejouer ta requête qui doit déjà être assez gourmande comme ça, il te suffit de ramener un enregistrement de plus dans le LIMIT : LIMIT ".$limit.",". ($results_pg+1);
Ainsi, tu ne joueras ta requête qu'une fois, et si le nombre d'enregistements retournés est supérieur à $results_pg, alors il te suffit de ne pas afficher le dernier (suffit d'un compteur) et de proposer le lien page suivante :)