Lister une requete sql sur plusieurs pages

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 287 fois - Téléchargée 28 fois

Contenu du snippet

suite a un msg sur le forum, je poste le morceau d'un vieux script que javais permettant de faire tout les liens de chaque pages pour afficher des message provenant dune requete sql

Source / Exemple :


------------------------------------------------------------------

// on initialise les variables
$msg_page=30; // donne le nombre de ligne a lister avant de passer a la page suivante
$page=1;
$ref=0;

// on compte le nombre d'enregistrement dans la table
$reponsesql=mysql_query("select * from matable");
$nbmsg = mysql_num_rows($reponsesql);

// on cherche a obtenir le nombre de page que l'on va devoir afficher
$nbpage=$nbmsg/$msg_page;
$nbpage=ceil($nbpage);

//on demarre la variable qui va contenir la chaine complete des liens vers les pages
$aff_gestion_page = "<font color=\"#FFFFFF\" size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">Page : ";

     // on cree les liens pour chaque pages
     while ($page<=$nbpage)
     {
     	  // si la page pour laquel on cree le lien est la page sur laquel on est, alors on ne cree pas de lien pour cette page
          if($page==($_GET[idpage]/$msg_page)+1) $aff_gestion_page .= " <font color=\"#999999\"><b>$page</b></font>";
          else $aff_gestion_page .= " <a class=\"link\" href=sms.php?selby=$_GET[selby]&selorder=$_GET[selorder]&id=seemsg&idpage=".$ref.">".$page."</a>";
          $ref+=$msg_page;
          $page++;
     }

//on termine la chaine
$aff_gestion_page .= "</font>";

// cette variable contient la chaine complete de tous les liens des pages generé,
// ce principe permet d'afficher les liens vers les page nimporte ou dans la page html, pas forcement en fin de page.
echo $aff_gestion_page;

------------------------------------------------------------------------------

// on cree ainsi la requete que l'on souhaite utiliser selon la page sur laquel on est
// LIMIT $_GET[idpage],$msg_page
$query="SELECT * FROM matable ORDER BY id DESC LIMIT $_GET[idpage],$msg_page";
$requete=mysql_query($query);

A voir également

Ajouter un commentaire

Commentaires

psyjc
Messages postés
182
Date d'inscription
dimanche 29 juin 2003
Statut
Membre
Dernière intervention
18 avril 2008
-
hum, bon bah ca veux dire que la fonction que j'ai remplacé ne marche pas (ce qui est logique, jai fais une phaute dautograf)
remplace
$nbmsg = msql_num_rows($reponsesql);
par
$nbmsg = mysql_num_rows($reponsesql);
sharkit
Messages postés
27
Date d'inscription
lundi 22 septembre 2003
Statut
Membre
Dernière intervention
7 mai 2007
-
Salut
Bon, moi j'ai tenté e l'intégrer dans un de mes sites, rien n'y fait
J'ai une erreur ici : $nbmsg = msql_num_rows($reponsesql);
je suis pas trop calé ...
Si je peux avoir un peu d'aide
@++
Merci
sebastienbro
Messages postés
246
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
5 août 2004
-
erf ouais merde jme suis trompé franchemen désolé ... ta du cherché lontmp :| ;)
psyjc
Messages postés
182
Date d'inscription
dimanche 29 juin 2003
Statut
Membre
Dernière intervention
18 avril 2008
-
é cherché partout, lexiste pas ta fonction, par contre ia ca : msql_num_rows() :)
sebastienbro
Messages postés
246
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
5 août 2004
-
juste au passe, y'a déjà une fonction qui permet de compter le nombre d'enregistrement d'une requete : c'est mysql_num_count(resultat);

bye

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.