Salut,
quand tu affiche tes truc tu sais combien tu en as !
tu sais aussi combien tu veut d'éléments afficher par page !
pour obtenir le nombre de page tu fait :
nombre d'élément total
------------------------------ = nombre de page
nombre d'élément par page
sachant que dans ton url tu as ?debut=x , tu récupère dans ton script $_GET['debut']. cette variable correspond au 1er élement a afficher (il permet la selection une bdd avec LIMIT, par exemple !)
si par exemple $_GET['debut'] = 12, tu affiche a partir de 12.
en peu de pratique nous avons 32 élements a afficher
je souhaite afficher 4 éléments par page !
on a donc 32/4 = 8 pages :)
maitenant si $début = 12 pour savoir sur quelle page tu est il te savoir de combien 12 est multiple de 4 ici 3
pour ceci tu fait 12/4 soit
debut / nombre d'élément par page ce qui donne 3 on est sur la 3ème page.
Ceci dit l'élément début du comment faire n'est jamais 1 multiple du nombre d'élément par page !
pourquoi ? simplement parce que la fonction LIMIT de mysql j'utilise comme ceci LIMIT 1erélement , nb d'élément.
exemple : SELECT id FROM table ORDER BY id ASC LIMIT 0,10, cette requete va resortir 10 tuples de la base c'est a dire ceux commencant allant de id =0 a id = 9 (soit 10 tuples).
si tu récupère l'id du dernier tuple pour le mettre dans l'url en tant que debut cela voudra dire que tu commence a 9 alors qu'il était deja afficher donc pour afficher tu fait debut + 1.
Pour le calcul de la page c'est pareil il faut ajouter 1 9+1 = 10
pour en revenir a mon exemple $debut ne sera pas égale a 12 mais 11 donc pour avoir 3 il me faut faire
(debut + 1)/nombre d'élements
la fonction floor retour l'entier inférieur en cas de chiffre a virgule (exemple floor(12.3) donne 12).
voila j'espère ne pas t'avoir perdu dans tout se fatras
et que tu n'a pas eu trop d mal a tout ingurgiter