IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Résultats sur plusieurs pages [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    à la recherche d'un stage de fin de formation dans le décisionnel
    Inscrit en
    Juillet 2002
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : à la recherche d'un stage de fin de formation dans le décisionnel

    Informations forums :
    Inscription : Juillet 2002
    Messages : 154
    Points : 85
    Points
    85
    Par défaut Résultats sur plusieurs pages
    Bonjour à vous tous

    je cherche une technique pour afficher le résultat d'une requête (plusieurs lignes) sur plusieurs pages avec les buttons de navigation ( première page, précédente, suivante, dernière page) un peu comme, ou mieux dire exactement comme pour la recherche dans les forums ou dans les membres,

    Merci

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Au lieu de poser sur tous les forums que tu trouves, tu pourrais au moins attendre une réponse.
    Bref essaye ceci :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    <?php
    function gestion_pages($d,$l,$nb_total){
    //$d: premier enregistrement affiché
    //$l: nombre d'enregistrements affichés par page
    //$nb_total: nombre total d'enregistrements  
     
    $html.= '<table width="180px" cellspacing="0" cellpadding="2" border="0" class="mini" align="center"><tr><td width="33%" nowrap="nowrap" align="left" valign="bottom">';
    $debut=$d-$l;
    if($debut<0) $debut=0;  
    if($d>0)
        {
    $html.= '<a href="?d=0&amp;l='.$l.'" alt="premi&egrave;re page" title="premi&egrave;re page"><img src="images/left_on.gif" width="9" height="16" hspace="0" border="0" /><img src="images/left_on.gif" width="9" height="16" hspace="0" border="0" /></a> ';
    $html.= '<a href="?d='.$debut.'&amp;l='.$l.'"><img src="images/left_on.gif" width="9" height="16" hspace="10" alt="page pr&eacute;c&eacute;dente" title="page pr&eacute;c&eacute;dente" border="0" /></a>';
    }
    $html.= '</td><td width="33%" nowrap="nowrap" align="center" valign="middle">page ';
    $html.= ceil($nb_total/$l)-ceil(($nb_total-$d)/$l)+1; //affiche le numéro de la page courante
    $html.= '/';
    $html.= ceil($nb_total/$l); //affiche le nb total de pages
    $html.= '</td><td width="33%" nowrap="nowrap" align="right" valign="bottom">';
    $suiv=$d+$l;
     
    if($d+$l<$nb_total)
        {
    $html.= '<a href="?d='.$suiv.'&amp;l='.$l.'"><img src="images/right_on.gif" width="9" height="16" hspace="10" alt="page suivante" title="page suivante" border="0" /></a> ';
    $html.= '<a href="?d='.($nb_total-$l).'&amp;l='.$l.'" alt="derni&egrave;re page" title="derni&egrave;re page"><img src="images/right_on.gif" width="9" height="16" hspace="0" border="0" /><img src="images/right_on.gif" width="9" height="16" hspace="0" border="0" /></a>';
    }
    $html.= '</td></tr></table>';
        return $html;
    }
     
    //on rajoute ces infos avant sa requête
    $d = $_GET['d'];
    if(!isset($_GET['l'])) $_GET['l']=4; //pour avoir que 4 enregistrements par page par exemple
    if(!isset($_GET['d'])) $_GET['d']=0;  //on affiche en premier l'enregistrement 0 (le premier) par défaut  
     
    // La requête :
    $results = $db->dbQuery("SELECT * FROM nomtable LIMIT ".$_GET['d'].",".$_GET['l']." ");
     
    //Appel de la fonction :
    $barrenavig = gestion_pages($_GET['d'],$_GET['l'],$nb_total);
    ?>

  3. #3
    Membre régulier
    Homme Profil pro
    à la recherche d'un stage de fin de formation dans le décisionnel
    Inscrit en
    Juillet 2002
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : à la recherche d'un stage de fin de formation dans le décisionnel

    Informations forums :
    Inscription : Juillet 2002
    Messages : 154
    Points : 85
    Points
    85
    Par défaut
    Merci ça marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT] Répartir des résultats sur plusieurs pages
    Par handybag dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 12/11/2008, 14h03
  2. [Oracle] Résultats sur plusieurs pages (pagination)
    Par lilsandy dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 06/07/2007, 10h26
  3. Formulaire recherche + résultat sur plusieurs pages
    Par Pepito2030 dans le forum Langage
    Réponses: 1
    Dernier message: 14/06/2007, 12h23
  4. [MySQL] Affichage des résultats d'une requête sur plusieurs pages
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/10/2006, 13h24
  5. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 13h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo