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 :

PHP Mysql Automatique Affichage


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut PHP Mysql Automatique Affichage
    Bonjour à tous,

    J'ai en cours un projet sur lequel je dois tout faire en automatique, je m'explique: j'ai une base de donnée avec des tables et avec un contenu dans chaque table.

    Ok, bon jusque là normalement vous suivez toujours.

    J'aimerais générer 1 page "B" sur laquelle s'affiche "La base de donnée" choisie dans la page "A".

    La page A nous donne juste le nom des tables cliquable qui nous amène vers la page B qui affiche le contenu de la base de donnée.

    Jusque là ça devrait toujours aller et vous vous dîtes ben tu fais une boucle où tu entres ta requête avec WHERE latableselectionnée. Oui mais non car en effet chaque table est différentes donc il est dur de prévoir à l'avance la structure (j'ai choisis un bon vieux tableau).

    Vous comprenez mieux le problème?

    Pour l'instant j'en suis à: (et le problème actuel c'est qu'il me répète 5 fois chaque entrée (oui je sais c'est la boucle, c'est le résultat le plus proche que j'ai pu obtenir), le premier affichage est vide car c'est ID que j'ai "supprimé" à l'affichage car inutile (ID m'est utile dans une autre partie pour la modif, suppression

    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
    //Nous sommes sur la PAGE B<br>echo '<table border> <tr>';<br>//$table = la table sélectionnée à la PAGE A<br>//Affichage de l'entête du tableau ayant pour TITRE les différents nom de colonne de ma table<br>$req=$bdd->query("SHOW COLUMNS FROM ".$table."");
    while($data = $req->fetch(PDO::FETCH_ASSOC))
    {
        //Show this to understand structure of SQL base
        //echo '<pre>'.print_r($data,true).'</pre>';
     
        if($data['Field'] == 'id') {}
        else { echo '<th style="padding:15px;">'.$data['Field'].'</th>'; } 
    }
    echo '</tr>';
    $req = NULL;
     
     
    $req_information = $bdd->query("SELECT * FROM ".$table."");
    while($data_information = $req_information->fetch())
    {
        $req=$bdd->query("SHOW COLUMNS FROM ".$table."");
        while($data = $req->fetch(PDO::FETCH_ASSOC))
        {
            echo '<tr>';
                    //Pour "Supprimer" l'affichage de ID
            if($data['Field'] == 'id') {}
            else
            {
                //echo '<td>'.$data['Field'].'</td>';
     
                //echo count($data).'<br/><br/>';
     
                //echo '<td>';
                $information_in = $data['Field'];
                for($i = 1 ; ($i+1) < count($data); $i++)
                {
                    echo '<td style="padding:15px;">'.$data_information[$i].'-'.$i.'</td>';
                    //echo $data_information[$i];
                }
                //echo '</td>';
            }
        echo '</tr>';
        }
    }
    echo '</table>';

    Merci de votre aide,

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Les imbrications de requêtes ce n'est pas une bonne idée
    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
    echo '<table>
    <tr>';
    $req=$bdd->query('SHOW COLUMNS FROM '.$table);
    while($data = $req->fetch(PDO::FETCH_ASSOC)) {
         echo '<th>' . $data['Field'] . '</th>';
    }
    echo '</tr>
             <tr>';
    $req=$bdd->query('SELECT * FROM ' . $table);
    while($data = $req->fetch(PDO::FETCH_ASSOC)) {
            foreach ($data as $value) {
                 echo '<td>' . htmlspecialchars($value) . '</td>';
            }
    }
    echo '</tr>
    </table>';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    Re,

    Merci de ta réponse, c'est juste excellent, pas parfait car il y avait une petite erreur.

    Encore merci, voilà exactement ce que je cherchais: (c'est le placement des <TR> pour une nouvelle ligne dans la 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
    echo '<table border>
    <tr>';
    $req=$bdd->query('SHOW COLUMNS FROM '.$table);
    while($data = $req->fetch(PDO::FETCH_ASSOC)) {
         echo '<th>' . $data['Field'] . '</th>';
    }
    echo '</tr>';
     
    $req=$bdd->query('SELECT * FROM ' . $table);
    while($data = $req->fetch(PDO::FETCH_ASSOC)) {
    	echo'<tr>';
            foreach ($data as $value) {
                 echo '<td>' . htmlspecialchars($value) . '</td>';
            }
    		echo '
    <td style="padding:15px;"><a href="page.php?page=Direction&&direction=modif&&table='.$table.'&&id='.$data_information['id'].'"><img src="modifier.png" alt="modification" title="modification"/></a></td>
    <td style="padding:15px;"><a href="page.php?page=Direction&&direction=del&&table='.$table.'&&id='.$data_information['id'].'"><img src="supprimer.png" alt="delete" title="delete"/></a></td>
    </tr>';
    }
     
     
    echo'</table>';

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

Discussions similaires

  1. [MySQL] Sécurité PHP/MySQL insert/affichage
    Par thibaud28 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 07/03/2010, 20h22
  2. Script php + mysql automatique
    Par ludobado dans le forum Langage
    Réponses: 3
    Dernier message: 13/04/2007, 15h06
  3. Affichage complexe(?) PHP-MySQL
    Par Lypertrophie dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/09/2006, 10h05
  4. [PHP/MySQL] Solution d'affichage image et vidéo
    Par cnguyen dans le forum Administration
    Réponses: 6
    Dernier message: 16/08/2006, 13h41
  5. [PHP MySQL] procédure automatique chaque jour a telle heure
    Par Therambok dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 20/06/2006, 13h09

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