Affichage résultat requête ds tableau dynamiq
Résolu
mehdi9833
Messages postés
88
Date d'inscription
Statut
Membre
Dernière intervention
-
mehdi9833 Messages postés 88 Date d'inscription Statut Membre Dernière intervention -
mehdi9833 Messages postés 88 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Voici mon probléme :
Je souhaite afficher le résultat d'une requête (portant sur une base mysql). La requête fonctionne parfaitement. Je voudrai ensuite afficher le résultat dans un tableau php en dessous, de façon à ce que le nombre de lignes et de colonne soit déterminés automatiquement en fonction du résultat.
Mon tableau contiendrait 7 colonnes car 7 champs à afficher,comment recuperer le contenu de tous les champs du table d'une base des donnees et les afficher dans un tableau.
Voici une ébauche de mon code :
<html>
<head><title>tableau dynamique </title></head>
<body>
<?php
//parametres de connexion
$machine="localhost";
$utilisateur="root";
$nom_base="catmat";
//connexion au SGBD Mysql
$con=mysql_connect($machine,$utilisateur) or die ('Erreur : '.mysql_error() );
//s'il y a de connection
//selection de la base des donnees
mysql_select_db($nom_base);
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui //
//récupère tous les enregistrements //
$query='SELECT `strCode` , `strLibelle` , `strLigneProduit` , `strFabricant` , `strTypeProduit` , `prixHT` , `strClasseProduit` FROM articles;';
$resultat=mysql_query($query,$con) or die (mysql_error());;
$total=mysql_num_rows($resultat);//donne le nombre de ligne //
// si on a récupéré un résultat on l'affiche. //
if($total) {
//debut du tableau
echo'<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les champs //
echo '<tr>';
echo '<td bgcolor="#669999"><b><u>Code article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Libelle</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Catégorie article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Fabricant</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Type article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Prix HT</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Classe article</u></b></td>';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 8 colonnes, 1 résultat par ligne. //
while($row=mysql_fetch_array($resultat))
{
echo '<tr>';
echo '<td bgcolor="#CCCCCC">'.$row["Code article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Libelle"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Catégorie article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Fabricant"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Type article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Prix HT"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Classe article"].'</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($resultat);
?>
</body>
</html>
MERCI d'avance
Voici mon probléme :
Je souhaite afficher le résultat d'une requête (portant sur une base mysql). La requête fonctionne parfaitement. Je voudrai ensuite afficher le résultat dans un tableau php en dessous, de façon à ce que le nombre de lignes et de colonne soit déterminés automatiquement en fonction du résultat.
Mon tableau contiendrait 7 colonnes car 7 champs à afficher,comment recuperer le contenu de tous les champs du table d'une base des donnees et les afficher dans un tableau.
Voici une ébauche de mon code :
<html>
<head><title>tableau dynamique </title></head>
<body>
<?php
//parametres de connexion
$machine="localhost";
$utilisateur="root";
$nom_base="catmat";
//connexion au SGBD Mysql
$con=mysql_connect($machine,$utilisateur) or die ('Erreur : '.mysql_error() );
//s'il y a de connection
//selection de la base des donnees
mysql_select_db($nom_base);
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui //
//récupère tous les enregistrements //
$query='SELECT `strCode` , `strLibelle` , `strLigneProduit` , `strFabricant` , `strTypeProduit` , `prixHT` , `strClasseProduit` FROM articles;';
$resultat=mysql_query($query,$con) or die (mysql_error());;
$total=mysql_num_rows($resultat);//donne le nombre de ligne //
// si on a récupéré un résultat on l'affiche. //
if($total) {
//debut du tableau
echo'<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les champs //
echo '<tr>';
echo '<td bgcolor="#669999"><b><u>Code article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Libelle</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Catégorie article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Fabricant</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Type article</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Prix HT</u></b></td>';
echo '<td bgcolor="#669999"><b><u>Classe article</u></b></td>';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 8 colonnes, 1 résultat par ligne. //
while($row=mysql_fetch_array($resultat))
{
echo '<tr>';
echo '<td bgcolor="#CCCCCC">'.$row["Code article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Libelle"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Catégorie article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Fabricant"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Type article"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Prix HT"].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row["Classe article"].'</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($resultat);
?>
</body>
</html>
MERCI d'avance
A voir également:
- Affichage résultat requête ds tableau dynamiq
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Tableau croisé dynamique - Guide
2 réponses
Hello,
Voici un exemple: (modifie au besoin ;)
Voilà bonne continuation
Voici un exemple: (modifie au besoin ;)
<?php // connection à ta base mysql $dbconnect = mysql_pconnect("nomsrv", "user", "pass"); mysql_select_db("basededonnee", $dbconnect); // req $req = "SELECT * FROM .... WHERE ... ORDER BY ... ASC"; // execution de la req $req = mysql_query($req); // comptage resultat $count = mysql_num_rows($req); // vérif si on affiche quelque chose if($count > 0) { // ouverture du tableau + en-têtes print "<table> <tr> <th>blabla1</th> <th>blabla2</th> <th>blabla3</th> <th>blabla4</th> <th>blabla5</th> <th>blabla6</th> <th>blabla7</th> </tr>"; // boucle d'affichage des résultats while($res = mysql_fetch_array($req)) { // affichage des 7 champs d'une ligne de la bdd print "<tr> <td>".$res['champ_msql1']."<th> <td>".$res['champ_msql2']."<th> <td>".$res['champ_msql3']."<th> <td>".$res['champ_msql4']."<th> <td>".$res['champ_msql5']."<th> <td>".$res['champ_msql6']."<th> <td>".$res['champ_msql7']."<th> </tr>"; } // Fermeture du tableau print "</table>"; } else { // aucun resultat à afficher print "<p>Aucun résultat à afficher</p>"; } // fermeture connection mysql mysql_close(); ?>
Voilà bonne continuation