Tableau php
jeannot la carotte
-
mpmp93 -
mpmp93 -
Bonjour,
j'ai le tableau suivant en php:
sauf que le titre se répete à chaque fois que les variables ont une nouvelles valeurs.
et moi j'aimerais avoir le titre en début de tableau et une seule fois.
comment faire svp?
merci d'avance,
jeannot la carotte
j'ai le tableau suivant en php:
echo "<div align=\"center\"><center><table border=\"1\"><tr><td>"; echo '<b>'.' nom de la liaison '.'</b>'; echo "</td><td>"; echo '<b>'.' numéro de la liaison '.'</b>'; echo "</td></tr><tr><td>"; echo $re['nom_liaison']; echo "</td><td>"; echo $re['num_liaison']; echo "</td></tr>"; echo "</table></center></div>";
sauf que le titre se répete à chaque fois que les variables ont une nouvelles valeurs.
et moi j'aimerais avoir le titre en début de tableau et une seule fois.
comment faire svp?
merci d'avance,
jeannot la carotte
A voir également:
- Tableau php
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
5 réponses
Bonjour,
Tu as demandé à la modération de donner le statut "résolu" à ce topic. C'est donc que tu as trouvé la solution par toi-même.
Il est d'usage, dans cette situation, de se répondre à soi-même pour l'édification des passants.
Merci pour ton attention.
Tu as demandé à la modération de donner le statut "résolu" à ce topic. C'est donc que tu as trouvé la solution par toi-même.
Il est d'usage, dans cette situation, de se répondre à soi-même pour l'édification des passants.
Merci pour ton attention.
Première erreur, mélanger le PHP et le HTML. Les bonnes stratégies:
- si la page est un template qui contient majoritairement du code HTML et fait appel ponctuellement au PHP, on écrit son code HTML sans faire appel à echo ailleurs qu'aux endroits où l'on va écrire les données à afficher. Exemple:
<div align="center"><center><table border="1"><tr><td>
<b>nom de la liaison</b>
</td><td>
<b></b>
</td></tr><tr><td>
<?php echo $re['nom_liaison']; ?>
</td><td>
<?php echo $re['num_liaison']; ?>
</td></tr>
</table></center></div>
- si la page est un template qui contient majoritairement du code HTML et fait appel ponctuellement au PHP, on écrit son code HTML sans faire appel à echo ailleurs qu'aux endroits où l'on va écrire les données à afficher. Exemple:
<div align="center"><center><table border="1"><tr><td>
<b>nom de la liaison</b>
</td><td>
<b></b>
</td></tr><tr><td>
<?php echo $re['nom_liaison']; ?>
</td><td>
<?php echo $re['num_liaison']; ?>
</td></tr>
</table></center></div>
Ensuite, le code HTML se structure de la même manière que l'on organise le code PHP en respectant les indentations:
<div align="center">
<center>
<table border="1">
<tr>
<td><b>nom de la liaison</b></td>
<td><b>numéro de la liaison</b></td>
</tr>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</table>
</center>
</div>
<div align="center">
<center>
<table border="1">
<tr>
<td><b>nom de la liaison</b></td>
<td><b>numéro de la liaison</b></td>
</tr>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</table>
</center>
</div>
L'élément TABLE permet de structurer son contenu en trois sous-ensembles: THEAD, TBODY, TFOOT. Au passage, éliminons CENTER de notre code qui devient obsolète en HTML5. On peut également changer les TD en TH dans la partie encadrée par THEAD:
<div align="center">
<table border="1">
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</tbody>
</table>
</div>
<div align="center">
<table border="1">
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</tbody>
</table>
</div>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Enfin, on évitera d'utiliser des attributs en relation directe avec l'affichage au profit de déclaration de styles:
<section style="text-align: center;">
<style>
table { border: 1px solid black; }
thead { background-color: #cfcfcf; }
td { border: 1px solid black; }
</style>
<table>
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</tbody>
</table>
</section>
Et voici comment répéter l'affichage des données issues d'une table. On suppose que les données ont été récupérées dans un tableau $listeLiaisons où chaque ligne de ce tableau contient l'équivalent d'un enregistrement de notre table en base de données:
<?php
// on charge les données à afficher depuis une table en base de données
$listeLiaisons = $Appli->getDonneesliaisons();
?>
<section style="text-align: center;">
<style>
table { border: 1px solid black; }
thead { background-color: #cfcfcf; }
td { border: 1px solid black; }
</style>
<table>
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<?php foreach($listeLiaisons AS $key => $re): ?>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</section>
<section style="text-align: center;">
<style>
table { border: 1px solid black; }
thead { background-color: #cfcfcf; }
td { border: 1px solid black; }
</style>
<table>
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
</tbody>
</table>
</section>
Et voici comment répéter l'affichage des données issues d'une table. On suppose que les données ont été récupérées dans un tableau $listeLiaisons où chaque ligne de ce tableau contient l'équivalent d'un enregistrement de notre table en base de données:
<?php
// on charge les données à afficher depuis une table en base de données
$listeLiaisons = $Appli->getDonneesliaisons();
?>
<section style="text-align: center;">
<style>
table { border: 1px solid black; }
thead { background-color: #cfcfcf; }
td { border: 1px solid black; }
</style>
<table>
<thead>
<tr>
<th>nom de la liaison</th>
<th>numéro de la liaison</th>
</tr>
</thead>
<tbody>
<?php foreach($listeLiaisons AS $key => $re): ?>
<tr>
<td><?php echo $re['nom_liaison']; ?></td>
<td><?php echo $re['num_liaison']; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</section>