Afficher le contenu d'une base mysql dans un tableau

Eléphanteau du PHP | 30 Messages

07 août 2007, 12:58

Bonjour,
Je voudrais savoir comment afficher le contenu de ma base dans un tableau ? Voici le script:
<?php
                                                    echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
                                                    ?>
                                                    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
                                                    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
                                                    <head>
                                                    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" />
                                                    <title></title>
                                                    <meta name="description" content="" />
                                                    <meta name="keywords" content="" />
                                                    <meta name="author" content="Bazonnet Benjamin" />
                                                    <meta name="generator" content="L'Equipe de Mon Hôtel Virtuel" />
                                                    <meta http-equiv="imagetoolbar" content="no" />
                                                    <meta http-equiv="Pragma" content="no-cache" />
                                                    <style type="text/css">
                                                    /* <![CDATA[ */ 
                                                    body {
                                                        color: #000;
                                                        background-color: #efefef;
                                                        font-family: verdana, helvetica, sans-serif;
                                                        font-size: 80% !important;
                                                    }
                                                    p.situation {
                                                        text-align: right;
                                                        padding: 1em;
                                                    }
                                                    p.navigation {
                                                        text-align: center;
                                                        font-size: 0.85em;
                                                        text-decoration: underline;
                                                    }
                                                    p.date_nouv {
                                                        float: right;
                                                        font-size: 0.85em;
                                                    }
                                                    /* ]]> */
                                                    </style>
                                                    </head>
                                                    <body>
                                                    <?php
                                                    /**
                                                    Commençons par fixer les paramètres :
                                                     */
                                                    /* Paramètres de connexion */
                                                    $admin_bd   = "************";              /* Le pseudonyme permettant à l'administrateur de se connecter */
                                                    $mdp_bd     = "*************";                  /* Le mot d passe de l'administrateur de base de données */
                                                    $serveur_bd = "**********";         /* L'adresse du serveur de base de données */
                                                    $base_bd    = "***********";           /* La base de données où sont enregistrées les informations */
                                                    
                                                    /* Paramètres de pagination */
                                                    $nb_hotels_par_page = 20;             /* Nombre de d'hôtels par page */
                                                    $url = "./mess_recept.php?id=$id&page=";
                                                    
                                                    /* On détermine quelle est la page qui est actuellement affichée */
                                                    $page_en_cours    = isset($_GET['page']) ? $_GET['page'] : 0;
                                                    $page_affichee    = ($page_en_cours + 1);
                                                    
                                                    /* Connexion au serveur de base de données */
                                                    $connexion = mysql_pconnect($serveur_bd, $admin_bd, $mdp_bd);
                                                    mysql_select_db($base_bd);
                                                    $resultat_sql = mysql_query("select * from membres WHERE pseudo=\"$pseudo\"");
                                                    
                                                    /* Requête pour compter les messages présents dans notre base de données */
                                                    $sql_nb = "SELECT COUNT(*) FROM `messagerie` WHERE pseudo=\"$pseudo\"";
                                                    
                                                    /* Exécution de la requête et récupération du résultat */
                                                    $resultat_1 = mysql_query($sql_nb);
                                                    $nb_hotels = mysql_result($resultat_1, 0);
                                                    
                                                    /* Calcul du nombre total de pages : on arrondit à l'entier supérieur (ceil() ) */
                                                    $nb_pages = ceil($nb_hotels / $nb_hotels_par_page);
                                                    
                                                    /** 
                                                    Nous disposons maintenant de suffisament d'éléments pour créer notre barre de navigation.
                                                    Première chose à vérifier : avons-nous plusieurs pages, et au moins une ?
                                                     */
                                                    if($nb_pages > 0)
                                                    {
                                                        /* On définit une variable qui contiendra les données de navigation */
                                                        $barre_nav = "";
                                                        /* Nous avons au moins une page : avons nous besoin d'une barre de navigation ? */
                                                        if($nb_pages > 1)
                                                        {
                                                            /** 
                                                            Nous avons plusieurs pages: nous allons afficher successivement les liens vers
                                                            les pages précédentes s'il y en a, la page en cours et les liens vers les pages
                                                            suivantes. Nous aurons une barre sous la forme : 1 | 2 | 3 etc.. en liens clicables
                                                            sauf pour la page en cours dont nous mettrons le chiffre en gras
                                                             */
                                                            if($page_en_cours > 0)
                                                            {
                                                                for($i = 0; $i < $page_en_cours; $i++)
                                                                {
                                                                    $p = $i + 1;
                                                                    $barre_nav .= "<a href=\"". $url . $i ."\" title=\"page ". $p ."\">". $p ."</a> | ";
                                                                }
                                                            }
                                                            /**
                                                            On affiche la page en cours : notez le (+ 1) : pour les calculs, nous partons d'une 
                                                            page 0 mais pour l'internaute, il est préférable de commencer à la page 1, donc on incrémente
                                                             */
                                                            $barre_nav .= "<strong>". $page_affichee ."</strong>";
                                                            /* Enfin on affiche (s'il y a lieu) les liens vers les pages suivantes */
                                                            if(($page_affichee) < $nb_pages)
                                                            {
                                                                /* Il reste encore d'autres pages à afficher */
                                                                $nb_suivantes = $nb_pages - ($page_affichee);
                                                                for($j = ($page_affichee); $j < $nb_pages; $j++)
                                                                {
                                                                    $p = $j + 1;
                                                                    $barre_nav .= " | <a href=\"". $url . $j ."\" title=\"page ". $p ."\">". $p ."</a>";
                                                                }
                                                            }
                                                            
                                                            /* On peut définir en plus la situation dans une autre variable à afficher ailleurs */
                                                            $page_affichee = "Page ". $page_affichee ." sur un total de ". $nb_pages ." pages.";
                                                        }
                                                        else
                                                        {
                                                            /* Nous n'avons qu'une seule page, on peut se contenter d'afficher juste page 1/1 */
                                                            $barre_nav .= "page 1/1";
                                                        }
                                                        /**
                                                        On peut maintenant afficher notre page. On va commencer par récupérer les informations
                                                        On doit définir à partir de quelle nouvelle on doit récupérer les données dans la clause LIMIT.
                                                         */
                                                        $debut = $page_en_cours * $nb_hotels_par_page;
                                                        $sql_n = "SELECT * FROM messagerie LIMIT ". $debut .", ". $nb_hotels_par_page ." ORDER BY date DESC;";
                                                        $nouvelles = mysql_query($sql_n);
                                                    ?>
                                                    <p class="situation"><?php echo($page_affichee); ?></p>
                                                    <?php
                                                        while($hot = mysql_fetch_assoc($nouvelles))
                                                        {
                                                    ?>
                                                    <p class="hot">Nom de l'Hôtel: <?php echo $hot['nom_hotel']; ?></p>
                                                    <h3>Cet Hôtel Apartient à la chaine "<?php echo $hot['nom_chaine']; ?>"</h3>
                                                    <h3>Pseudo du Directeur: <?php echo $hot['pseudo']; ?></h3>
                                                    <h3>Classification de l'Hôtel: <?php echo $hot['classification']; ?></h3>
                                                    <hr />
                                                    <?php
                                                        }
                                                        /* on libère la mémoire */
                                                        mysql_free_result($resultat_1);
                                                        mysql_free_result($hotels);
                                                        /* On peut fermer la connexion à MySQL */
                                                        mysql_close($connexion);
                                                        /* On affiche maintenant la barre de navigation */
                                                    ?>
                                                    <p class="navigation"><?php echo($barre_nav); ?></p>
                                                    <?php
                                                    }
                                                    else
                                                    {
                                                        /** 
                                                        Nous n'avons aucune page, on peut alors afficher un message autre 
                                                        sans devoir nous préoccuper de la navigation
                                                         */
                                                    ?>
                                                    <h3>Il n'y à aucun hôtel à Auxerre</h3>
                                                    <hr />
                                                    <?php
                                                    }
                                                    ?>
                                                    </body>
                                                    </html>
Merci

d0m
Mammouth du PHP | 1141 Messages

07 août 2007, 13:19

la réponse à ta question est ici.