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 :

Simplifier une requête sql et affichage dans un tableau [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut Simplifier une requête sql et affichage dans un tableau
    Bonjour,

    Est-il possible de simplifier une requête et un affichage :

    Voici mon code ci-dessous qui fonctionne très bien mais cependant très long pour les mises à jour ect... et en + il affiche pas ttes les données de ma table

    Est-il possible de remplacer ma requête pour afficher tt les champs de ma table avec tt les résultats ect..

    sans écrire à chaque fois tt les champs j'en ai 18
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $select = 'SELECT prenom,nom,titre,phone,email,no,cp,etc..... FROM tfi2003_contacts ';
    code fonctionnel :

    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
    55
    56
    57
    <html>
    <body>
    <?php
     
    $host = 'localhost';
    $user = 'root';
    $pass = '';
    $db = 'import';
     
     
    $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
    mysql_select_db($db) or die ('Erreur :'.mysql_error());
     
     
    $select = 'SELECT prenom,nom,titre,phone,email,no,cp FROM tfi2003_contacts ';
    $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
    $total = mysql_num_rows($result);
     
     
    // si on a récupéré un résultat on l'affiche.
    if($total) {
        // début du tableau
        echo '<table bgcolor="#FFFFFF">'."\n";
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes
            echo '<tr>';
            echo '<td bgcolor="#669999"><b><u>Prénom</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>nom</u></b></td>';
                    echo '<td bgcolor="#669999"><b><u>titre</u></b></td>';
            echo '<td bgcolor="#669999"><b><u>phone</u></b></td>';
                    echo '<td bgcolor="#669999"><b><u>email</u></b></td>';
                    echo '<td bgcolor="#669999"><b><u>no</u></b></td>';
                    echo '<td bgcolor="#669999"><b><u>cp</u></b></td>';
                    echo '</tr>'."\n";
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
        while($row = mysql_fetch_array($result)) {
            echo '<tr>';
            echo '<td bgcolor="#CCCCCC">'.$row['prenom'].'</td>';
            echo '<td bgcolor="#CCCCCC">'.$row['nom'].'</td>';
            echo '<td bgcolor="#CCCCCC">'.$row['titre'].'</td>';
                    echo '<td bgcolor="#CCCCCC">'.$row['phone'].'</td>';
                    echo '<td bgcolor="#CCCCCC">'.$row['email'].'</td>';
                    echo '<td bgcolor="#CCCCCC">'.$row['no'].'</td>';
                    echo '<td bgcolor="#CCCCCC">'.$row['cp'].'</td>';
     
                    echo '</tr>'."\n";
        }
        echo '</table>'."\n";
        // fin du tableau.
    }
    else echo 'Pas d\'enregistrements dans cette table...';
     
    // on libère le résultat
    mysql_free_result($result);
     
    ?>
    </body>
    </html>

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    met un *, c'est la base du SQL




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $select = 'SELECT * FROM tfi2003_contacts ';
    $result = mysql_query($select);
     
    echo '<table>';
     
    $rows = mysql_fetch_assoc($result);
    echo '<tr><th>', implode('</th><th>', array_keys($rows)), '</th></tr>';
     
    do {
        echo '<tr><td>', implode('</td><td>', $rows), '</td></tr>';
    } while($rows = mysql_fetch_assoc($result));
     
    echo '</table>';

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Merci pour la précision : mais mon point bloquant et aussi au niveau du tableau
    j'ai plus mon tableau en fond gris avec quadrillage ? pourtant je l'avais avant.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Pourtant,
    j'avais écrit SPÉCIALEMENT POUR TOI un beau code ici...

    C'est à se demander si ça vaut vraiment la peine d'y passer du temps...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Grand Merci jreaux62 : je tiens à vous féliciter tt d'abord car j'apprends énormément grâce à vous.

    J'apprends les deux méthodes car je vais utiliser la méthode 2 sur une autre table avec bp de champs sa m’entraîne, mais en tt cas sincèrement j'utilise bien le code que vous m'avez donné même que j'apprends par coeur pour progresser croyez moi merci encore jreaux62

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Debutant10 Voir le message
    Merci pour la précision : mais mon point bloquant et aussi au niveau du tableau
    j'ai plus mon tableau en fond gris avec quadrillage ? pourtant je l'avais avant.
    le style est a mettre dans le CSS, pas dans le HTML

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    Très bien stealth35, sur la piste du .CSS j’apprends une nouvelle méthode d'affichage, et d’ailleurs je me suis renseigné et essayé, de faire le lien avec .CSS

    mais cela dit dans le cas n°2 comment faire simple un tableau qui affiche simplement les données d'une table sur fond gris en .CSS

    comme la métode 1 de jreaux62 que j'utilise actuellement quie est très bien.

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    en CSS ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    td {
        background:#CCC;
    }

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    460
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 460
    Points : 71
    Points
    71
    Par défaut
    1-/ Faut-il créer une extension .CSS ?

    avec comme code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    td {
        background:#CCC;
    }
    2-/ Si oui mais je ne vois pas s'il faut faire un lien ?

    car cela ma l'air simple comme méthode puis-je voir comment faite vous ? avec un cas simple

  10. #10

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/08/2014, 18h07
  2. [MySQL] Simplifier une requête SQL
    Par maestro982 dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 23/05/2010, 13h26
  3. [PHP 5.2] Affichage du résultat d'une requête SQL dans un tableau indenté
    Par ratatam25 dans le forum Langage
    Réponses: 5
    Dernier message: 07/09/2009, 16h50
  4. [SQL] affichage d'une requête sql dans un tableau
    Par benvegu dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 21/02/2008, 14h01
  5. [SQL] Simplifier une requête SQL ?
    Par renaud26 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 29/04/2006, 13h50

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