Affichage des données mysql dans un tableau html
JDP91
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
hharchi9 Messages postés 567 Date d'inscription Statut Membre Dernière intervention -
hharchi9 Messages postés 567 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Mon problème
J'ai une table mysql (table de rendez-vous) avec champs nom et date (plusieurs noms peuvent exister pour une même date, plusieurs dates peuvent exister pour un même nom.)
date#1 nom#1
date#2 nom#1
date#2 nom#2
date#2 nom#3
date#3 nom#4
date#3 nom#3
date#4 nom#1
date#4 nom#4
date#5 nom#2
je veux afficher sous forme de tableau.
date#1 date#2 date#3 date#4 date#5
nom#1 nom#1 nom#4 nom#1 nom#2
nom#2 nom#3 nom#4
nom#3
La solution est peut-être très simple, mais je n'ai pas trouvé (je débute en PHP).
J'ai fait une 1ère requête pour avoir les dates existantes de façon unique (j'ai pu les afficher comme souhaité) puis une boucle avec une requête pour chaque date pour avoir les noms correspondants à chaque date que je stocke dans une table puis je coince pour les afficher au bon endroit
Toute idée sera bienvenue
Mon problème
J'ai une table mysql (table de rendez-vous) avec champs nom et date (plusieurs noms peuvent exister pour une même date, plusieurs dates peuvent exister pour un même nom.)
date#1 nom#1
date#2 nom#1
date#2 nom#2
date#2 nom#3
date#3 nom#4
date#3 nom#3
date#4 nom#1
date#4 nom#4
date#5 nom#2
je veux afficher sous forme de tableau.
date#1 date#2 date#3 date#4 date#5
nom#1 nom#1 nom#4 nom#1 nom#2
nom#2 nom#3 nom#4
nom#3
La solution est peut-être très simple, mais je n'ai pas trouvé (je débute en PHP).
J'ai fait une 1ère requête pour avoir les dates existantes de façon unique (j'ai pu les afficher comme souhaité) puis une boucle avec une requête pour chaque date pour avoir les noms correspondants à chaque date que je stocke dans une table puis je coince pour les afficher au bon endroit
Toute idée sera bienvenue
A voir également:
- Afficher des données mysql en php dans un tableau html
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Impossible d'afficher le rapport de tableau croisé dynamique sur un rapport existant ✓ - Forum Excel
- Les données fournies dans le fichier à télécharger peuvent être synthétisées par le tableau récapitulatif ci-dessous. dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. ✓ - Forum Excel
1 réponse
Bonsoir,
Mettez les dates renvoyées par votre première requête dans un
La variable choix étant le
Les résultats pour chaque date sont stockés dans des
Je ne prétend aucunement que cette méthode est LA méthode. Il y a sûrement plus simple ou plus esthétique mais c'est la seule qui me vienne en tête pour le moment.
Espérant que cela puisse vous aider,
Cordialement,
hharchi9.
Mettez les dates renvoyées par votre première requête dans un
arraypuis, faites un
forde i=0 à n (la longueur de l'array). Dans ce
for, vous mettez une requête sql du genre :
$req = $bdd->prepare("SELECT nom FROM table WHERE date=:date"); $req->execute(array(':date' => $choix[i]));
La variable choix étant le
arraydéfini précédemment.
Les résultats pour chaque date sont stockés dans des
arrays; Ensuite, un autre for vous permettra de coller les éléments au bon endroit.
Je ne prétend aucunement que cette méthode est LA méthode. Il y a sûrement plus simple ou plus esthétique mais c'est la seule qui me vienne en tête pour le moment.
Espérant que cela puisse vous aider,
Cordialement,
hharchi9.
le résultat de ma requête étant dans $users_rdv
<?php
while ($row = mysql_fetch_assoc($users_rdv))
{
$data[$row['date']][] = $row['prenom']." ".$row['nom'];
}
echo '<table width="500" border="2" cellpadding="5" cellspacing="0">';
$nligne = 0;
echo '<tr>';
if ($event_rdv >0)
{
foreach ($data as $date=>$noms) {
$nligne = max(count($noms), $nligne);
echo '<th bgcolor="#eeeeee">' . $date . '</th>';
}
echo '</tr>';
for ($l = 0; $l < $nligne; $l++) {
echo '<tr>';
foreach ($data as $date=>$noms)
{
$value = (isset($noms[$l])) ? $noms[$l] : '';
echo '<td>' . $value . '</td>';
}
echo '</tr>';
}
echo '</table>';
?>