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

Langage PHP Discussion :

Afficher les tables sur une page php


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut Afficher les tables sur une page php
    Bonjour,

    Je souhaiterais afficher les tables de ma bdd sur une page php, je me doute que c'est via une requete sql ^^, mais je ne sais absolument pas comment faire, j'ai apercue un SHOW TABLE sur la toile (merci google) mais je ne sais pas comment l'utiliser.

    En clair, je souhaiterais faire apparaitre mes tables dans un tableau comme on peut le faire avec les données de celle ci habituellement.

    Voila, j'espere que j'ai été clair.

    Merci de votre aide

  2. #2
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    Citation Envoyé par Maxime50 Voir le message
    Bonjour,

    Je souhaiterais afficher les tables de ma bdd sur une page php, je me doute que c'est via une requete sql ^^, mais je ne sais absolument pas comment faire, j'ai apercue un SHOW TABLE sur la toile (merci google) mais je ne sais pas comment l'utiliser.

    En clair, je souhaiterais faire apparaitre mes tables dans un tableau comme on peut le faire avec les données de celle ci habituellement.

    Voila, j'espere que j'ai été clair.

    Merci de votre aide
    Tu recupère le résultat d'une requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_query(SELECT tuples_voulus FROM ta_table WHERE conditions_facultatives );
    ensuite tu itère ta variable $req comme tu veux
    du genre en construisant un pré-tableau dans une autre variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $tab = "<table><tr><td>";
    .
    puis avec une boucle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for ($i = 0; $i< taille_de_ta_variable_req; $i++){
    $tab = $tab + $req[i] +"<td><tr>";
    }
    $tab = "</table>";
     
    echo($tab);


    Bon par contre je te laisse le soin de te renseigner sur google, sur la façon de te connecter à la base ect... et de vérifier ma syntaxe, ça fait 1 an que j'ai pas fait de php.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 453
    Points : 550
    Points
    550
    Par défaut
    Hmm, pourquoi ne pas faire une boucle pour afficher les lignes de la table une par une ?

    Du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $query = mysql_query("SELECT * FROM ma_table");
     
    while($champ = mysql_fetch_row($query)) {
        echo $champ["ma_colonne_1"] . " -- " . $champ["ma_colonne_2"] . " -- " . $champ["ma_colonne_2"];
    }

    (code fait en 30 secondes, si je me suis trompé n'hésitez pas à me corriger )

    EDIT: lool </noob> plus rapide

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    a </noob>

    merci a toi, mais le code que tu m'as donné est pas fait pour lire les données d'une table ?

    Un truc dans le genre

    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
     
    <?php
    mysql_connect('emplacement','utilisateur','motdepasse');
    mysql_select_db('mabasededonnees');
     
    $reponse = mysql_query('......');
     
                            while ($donnees = mysql_fetch_array($reponse))
                                {
     
                        ?>
    blablabla mon tableau dans lequel je met mes donnees
     
    <?php
    }
     
    mysql_close();
    ?>
    parce que ca m'y fait penser.

    Je cherche pas a afficher mes données ca je sais faire, ce que j'aimerais c'est voir sur une page php, quels sont les tables (de la bdd) qui existent.

    je vais quand meme essayer ta solution en attendant une autre reponse, merci a toi

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

    merci a toi aussi sachav

  5. #5
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    Ha oup's j'avais mal compris !
    dans ce cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_list_tables("bdd" );

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    y a pas de probleme, j'ai du mal a m'exprimer parfois

    merci a toi.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    Bon j'ai essayer deux truc, les voicis :

    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
    <?php
     
                            while ($donnees =mysql_list_tables("matable"))
                                {
     
                        ?>
                        <tr>
                        	<td>                        
                                <?php echo $donnees; ?>
                            </td>
                        </tr>
                        <?php
                            }
                            mysql_close();
                        ?>
    qui m'affiche une liste que je definirais d'infinie (arrivé a plus de 30000 resultats )

    Et celui ci

    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
    <?php
     
                            while ($donnees =mysql_list_tables("matable"))
                                {
     
                        ?>
                        <tr>
                        	<td>                        
                                <?php echo $donnees['matable']; ?>
                            </td>
                        </tr>
                        <?php
                            }
                            mysql_close();
                        ?>
    Qui lui m'affiche une page blanche mais avec, je pense, toujours autant de resultat trouvé, il continut indefiniment a chercher.

    Je trouve pas comment afficher mes tables par leurs nom

  8. #8
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_list_tables("matable"))
    ===>
    Désolé je suis allez trop vite;
    Cette fonction est dépréciée. Il est préférable d'utiliser la fonction mysql_query pour effectuer la requête SQL SHOW TABLES [FROM db_name] [LIKE 'pattern'] à la place.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $req = mysql_query(SHOW TABLES FROM "matable");
     
    while ($row = mysql_fetch_row($req)) {
       echo $row[0] ;
    }

  9. #9
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Salut,

    pour ton information, tu peux exploiter les données de la base INFORMATION_SCHEMA de MySQL tu auras bien plus d'informations sur tes tables.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    il me met une erreur

    Parse error: syntax error, unexpected T_STRING in /Applications/MAMP/.../index.php on line 84

    J'ai essayer en déplacant la premiere guillement avant le SHOW TABLES mais rien, marche po

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    Citation Envoyé par aityahia Voir le message
    Salut,

    pour ton information, tu peux exploiter les données de la base INFORMATION_SCHEMA de MySQL tu aura bien plus d'informations sur tes tables.
    Je te remercie quand meme d'avoir repondu , mais je n'est pas besoin d'autant d'information.

    La liste des tables existantes me suffit largement, j'ai fait un formulaire pour la création de table via php (en zone admin) et je souhaite afficher en dessous les tables existantes avec une fonction pour les supprimer, jusque la pas de probleme, c'est juste l'affichage de mes tables que j'arrive pas.

    Par contre je garde ton lien précieusement, qui c'est je pourrais en avoir besoin plus tard pour un autre projet.

  12. #12
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    essai ça



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_query("SHOW TABLES FROM 'matable'");

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    Je vais rééssayer parfois que j'avais mal ecrit mais je viens de le tenter, ca commence a me


    C'est bien ca, j'avais bien essayé, ca me met ca :

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''matable'' at line 1


    quand il dit ligne 1 il me parle de la ligne 84, pour qui pourquoi je sais pas

    j'ai aussi essayé ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_query("SHOW TABLES*FROM 'matable'") or die(mysql_error());

  14. #14
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Pour le nom de ta base de données il faut pas la mettre entre quotes si elle ne contient aucun espace, sinon il faudrait la mettre entre le caractère ` (Alt Gr+7)


    SHOW TABLES FROM `matable`

  15. #15
    Membre averti Avatar de Pymento
    Homme Profil pro
    Ingé. Info.
    Inscrit en
    Janvier 2008
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingé. Info.

    Informations forums :
    Inscription : Janvier 2008
    Messages : 366
    Points : 329
    Points
    329
    Par défaut
    $req = mysql_query("SHOW TABLES*FROM 'matable'") or die(mysql_error());

    attention à "*" ça n'y est pas.

    essai sans les cotes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req = mysql_query("SHOW TABLES FROM matable")
    Le mieux encore, c'est que tu aille dans ton administration de ta bdd et que tu teste la requête dans un exécuteur sql et après la mettre entre cote dans un mysql_query et tu obtiendra le même résultat.

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 92
    Points : 70
    Points
    70
    Par défaut
    Merci a vous deux, je vais essayer ca, par contre le alt gr+7, j'suis pas sur qu'il fonctionne, je suis sous mac

    c'est bon, ca fonctionne, me reste plus qu'a mettre sous forme de tableau, la c'est sur une seule ligne , mais ca c'est gateau ^^, merci de votre aide.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/04/2009, 01h55
  2. [MySQL] afficher contenu d'une table sur une page php
    Par naazih dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/05/2008, 08h02
  3. Réponses: 2
    Dernier message: 20/08/2007, 07h34
  4. Réponses: 1
    Dernier message: 20/09/2006, 00h29
  5. Afficher un calendrier sur une page php
    Par griese dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 12/06/2006, 09h53

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