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 :

[SQL] Limiter taille tableau html construit avec données sql


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 62
    Points : 34
    Points
    34
    Par défaut [SQL] Limiter taille tableau html construit avec données sql
    Bonjour,

    Voici mon souci.

    Je rempli un tableau html avec les variables d'une table sql.

    J'ai besoin que ce tableau soit limité par exemple à 7 lignes. Une fois que les 7 lignes sont remplies, il faudrait pouvoir afficher les liens "suivant" et "précédent".

    Et là, je ne sais pas du tout comment m'y prendre.

    Voici mon code pour la contruction du tableau :

    Code : 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
     
    <?
    require ("connectdb.php");//connection à la base
    $gagn=mysql_query('SELECT * FROM participants WHERE gagnant=1 ORDER BY date DESC'); 
    $i=0;
    while ($data=mysql_fetch_array($gagn))
    {
    $lignes_tableau.='
    <tr>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff">'.$data[date].'</font></td>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff">'.$data[login].'</font></td>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff"><b>'.$data[gains].' €</b></font></td>
     </tr>
     ';
    $i++;
    }
     
    echo '
    <table width="260" border="0" align="center" >
    <tr bgcolor="#C0C0C0">
    <td width="80" valign="top"><span class="Style27"><font size="2" ><div align="center"><font color="#006600">Date</font></td>
    <td width="120" valign="top"><span class="Style27"><font size="2"><div align="center"><font color="#006600">Pseudo</font></td>
    <td width="60" valign="top"><span class="Style27"><font size="2"><div align="center"><font color="#006600">Gains</font></td>
    </tr>	    
    '.$lignes_tableau.'
    </div>
    </table>'
    ?>
    Est ce que je dois passer par une confition avec ma variable $i ?
    J'essaies, mais cela ne marche pas...

    Merci d'avance.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    voila essaie de faire les modifications suivantes:

    Code : 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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <?php
    require ("connectdb.php");//connection à la base
    if(!isset($_GET['page'])){
      $page=1;
    }else
    {
       $page=$_GET['page'];
    }
    //On calcule les limites
    $gagn=mysql_query('SELECT * FROM participants WHERE gagnant=1 ORDER BY date DESC'); 
    $nb_elements=7;
    $nb=mysql_num_rows($gagn);
    $nb_pages=ceil($nb/$nb_elements);
    $limit_deb=($page-1)*$nb_elements;
     
     
    $gagn=mysql_query('SELECT * FROM participants WHERE gagnant=1 ORDER BY date DESC limit '.$limit_deb.','.$nb_elements); 
    $i=0;
    while ($data=mysql_fetch_array($gagn))
    {
    $lignes_tableau.='
    <tr>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff">'.$data[date].'</font></td>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff">'.$data[login].'</font></td>
    <td bgcolor="6DA6DA"><span class="Style27"><font size="2"><div align="center"><font color="#ffffff"><b>'.$data[gains].' €</b></font></td>
     </tr>
     ';
    $i++;
    }
     
    echo '
    <table width="260" border="0" align="center" >
    <tr bgcolor="#C0C0C0">
    <td width="80" valign="top"><span class="Style27"><font size="2" ><div align="center"><font color="#006600">Date</font></td>
    <td width="120" valign="top"><span class="Style27"><font size="2"><div align="center"><font color="#006600">Pseudo</font></td>
    <td width="60" valign="top"><span class="Style27"><font size="2"><div align="center"><font color="#006600">Gains</font></td>
    </tr>	    
    '.$lignes_tableau.'
    </div>
    </table>'
    if(($page>0)&&($page<=$nb_pages)){
      $prec='<a href="tapage.php?page='.($page-1).'">Precedent</a>';
      $suiv='<a href="tapage.php?page='.($page+1).'">Suivant</a>';
      if($page==1){
        $prec='';
      }
      if($page+1>$nb_pages){
       $suiv='';
      }
     
    }
    echo $prec.' '.$suiv;
    ?>

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 62
    Points : 34
    Points
    34
    Par défaut
    Alors là...

    Je dis chapô... Merci beaucoup... Fontionne du premier coup...

    J'aurais galéré un moment je pense... Et le coup des pages en variable après l'url...

    C'est parfait... Exactement ce que je souhaitais...

    Merci d'avoir pris le temps...

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 29/03/2011, 11h55
  2. [MySQL] Afficher les données dans un tableau html horizontal avec une seule requête au lieu de 6
    Par arthuro45 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/10/2010, 11h13
  3. [SQL] trie colonnes tableau html avec order by
    Par digger dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 01/05/2007, 16h01
  4. [MySQL] Problème affichage tableau PHP avec données SQL
    Par akalaan dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/04/2006, 14h34
  5. [SQL SERVEUR]taille d'une base de donnée
    Par hirochirak dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 08/01/2004, 12h07

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