Requete MySQL Afficher x resultats par page

Signaler
Messages postés
27
Date d'inscription
lundi 17 juin 2002
Statut
Membre
Dernière intervention
4 octobre 2007
-
Messages postés
27
Date d'inscription
lundi 17 juin 2002
Statut
Membre
Dernière intervention
4 octobre 2007
-
Voilà, j'ai fait un formulaire de recherche, mais je voudrais que le résultat s'affiche sur différentes pages suivant le nombre de resultats

je sais que la requete SQL est du genre:

$sql = 'SELECT * FROM `temp` WHERE `nom` LIKE "%dup%" ORDER BY `temps` DESC LIMIT 0 , 30';

mais comment faire pour que tout soit gérer niveau des pages (precedentes / suivantes) et que seulement 50 resultats soit affiché par page

Merci

3 réponses

Messages postés
11
Date d'inscription
dimanche 16 janvier 2005
Statut
Membre
Dernière intervention
31 janvier 2005

inspire toi de se code:

(connection.php c une page ou g mis les option de connection)

<hr style="width: 100%; height: 2px;"><?

include("connection.php");

// On met dans une variable le nombre de meubles qu'on veut par page

$nbmeublesparpage = 10;



// On récupère le nombre total de meubles

$retour = mysql_query('SELECT COUNT(*) AS nb_meubles FROM meubles');

$donnees = mysql_fetch_array($retour);

$nbmeubles = $donnees['nb_meubles'];



// On calcule le nombre de pages à créer

$nbpages = ceil($nbmeubles / $nbmeublesparpage);



// ///Puis on fait une boucle pour écrire les liens vers chacune des pages

for ($i = 1 ; $i <= $nbpages ; $i++)

{

echo '[meubles.php?page=' . $i . ' ' . $i . '] ';

}



if (isset($_GET['page']))

{

$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse

}

else // La variable n'existe pas, c'est la première fois qu'on charge la page

{

$page = 1; // On se met sur la page 1 (par défaut)

}



// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL

$premiermeubleaafficher = ($page - 1) * $nbmeublesparpage;



$reponse = mysql_query('SELECT * FROM meubles ORDER BY id DESC LIMIT ' . $premiermeubleaafficher . ', ' . $nbmeublesparpage);



while ($donnees = mysql_fetch_array($reponse))

{

echo '' . $donnees['Ref'] . '
'
. $donnees['desc'] . '
' . $donnees['dim'] . '
'
. $donnees['prix'] . '

';

}



mysql_close();

?>



<hr style="width: 100%; height: 2px;">
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut ;-)



<? à remplacer par <?php



ensuite toujours vérifier que $_GET['page'] est de type numérique :




if (isset($_GET['page']) AND is_numeric($_GET['page']))

{

//blabla

}



?>



a ++


Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
Messages postés
27
Date d'inscription
lundi 17 juin 2002
Statut
Membre
Dernière intervention
4 octobre 2007

ok merci a vous :)