Faire un système de page

Signaler
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
-
Messages postés
1466
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
7 février 2011
-
Bonjour,

Bon j'explique mon problème, voilà j'ai une base de donnée avec une multitude d'information prenons l'exemple d'un jeux dans ma bdd j'ai : nom, prix, description etc..

Dans mon php, j'affiche un jeux que j'intégre dans une boucle pour afficher toute les jeux:
while ($donnees = $reponse->fetch())
{
   mon jeux
}


$reponse étant ma requête.
Mais alors voilà ayant à peut prés +1000 jeux dans ma bdd cela commence à faire beaucoup à afficher d'un coup. Donc j'ai pensé à en afficher que 100 puis sur une deuxiéme page, 100 autre etc..

Mais problème vient d'ici, avec 'fetch()' je n'arrive pas avez vous une idée pour réaliser çà ? Ou une autre façon ?

Merci :)

3 réponses

Messages postés
157
Date d'inscription
dimanche 15 octobre 2006
Statut
Membre
Dernière intervention
27 août 2010
4
Tu peux passer un nombre dans l'url de ta page qui indiquera le numero du premier jeux à afficher. Pour chaque page tu rentre dans ta boucle où tu incrémente un nombre et dès que ce dernier est égal à celui passé en url, tu affiche les 100 jeux suivants.

Puis tu apelles ton autre page avec le numero passer dans l'url +100
Messages postés
1466
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
7 février 2011
1
Salut,
C'est exactement ça.
Pour schématiser...
<?php
//Tu décides d'afficher les jeux 100 par 100.
$nbr_affich=100; //Imaginons que c'est une var globale, sinon il faut la passer en paramètre
//-----
//L'url "de base" de ta page est donc : ta_page.php?id=0
Dans cette page, tu affiches les jeux de $_GET["id"] (0 pour la page de base) à $_GET["id"]+$nbr_affich (100 pour la page de base)
//-----
//Tu ajoutes un lien pour passer aux jeux suivants :
echo "Suivant";
?>


R&sultat :
Si ta page pour url "ta_page.php?id=0", tu afficheras les jeux de 0 à 100, avec un lien vers la page "ta_page.php?id=100" qui affichera les jeux de 100 à 200 avec une lien vers "ta_page.php?id=200" qui... etc...
De la même façon, tu peux ajouter un lien "Précédent".

Du coup, pour tes requètes SQL, tu ajoutes :
<?php
$sql="SELECT blabla FROM blabla ... LIMIT ".$_GET["id"].",".($_GET["id"]+$nbr_affich).";";
?>


Il ne faut pas oublier en début de page de compter le nombre de jeux que tu as dans ta table, dans le cas ou tu veux afficher les numéros de pages pour une navigation plus fluide. Le nombre de pages sera (nbr_jeux/nbr_affich).

Cordialement, uaip.
Messages postés
1466
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
7 février 2011
1
Euh, je me suis un peu emballé.
La requète SQL est plutôt :
<?php
$sql="SELECT blabla FROM blabla ... LIMIT ".$_GET["id"].",".$nbr_affich.";";
?>

La syntaxe étant : LIMIT id_de_départ,nombre_d'occurences
(et non : LIMIT id_de_départ,id_d'arrivée)


Cordialement, uaip.