Affichage résultat requête ds tableau dynamiq
Résolu
mehdi9833
Messages postés
93
Statut
Membre
-
mehdi9833 Messages postés 93 Statut Membre -
mehdi9833 Messages postés 93 Statut Membre -
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