j'aimerai afficher les données d'une table mysql dans un tableau, plutôt que de les avoir les unes sous les autres.
je voulais un tableau de 4 colonnes et les lignes qui sont indéfinies.
j'ai trouvé un tuto qui me paraissait simple, mais il est évident que je ne l'ai pas compris...
voici mon code
// $NbreData : le nombre de données à afficher
// $NbrCol : le nombre de colonnes
// $NbrLigne : calcul automatique AVANT affichage
// -------------------------------------------------------
// on se connecte à notre base
mysql_connect ("localhost", "id", "mdp");
mysql_select_db ("table");
//tableau à 4 colonnes
$NbrCol = 4;
// requête
$sql = "SELECT ref_a, lieu_a, auteurdate_a, url_a FROM table ORDER BY ref_a";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// $NbreData : le nombre de données à afficher
// $NbrCol : le nombre de colonnes
// $NbrLigne : calcul automatique a la FIN
//
$result = mysql_query($sql);
$NbreData = mysql_num_rows($result);
// affichage
$NbrLigne = 0;
if ($NbreData != 0) {
$j = 1;
echo '<table border="1">';
while ($data = mysql_fetch_array($req)) {
$ref = $data['ref_a'];
$url = $data['url_a'];
$lieu = $data['lieu_a'];
$page = '<a href=" '.$url.' ">'.$lieu.'</a>';
$autdat = nl2br(htmlentities(trim($data['auteurdate_a'])));
}
{
if ($j%$NbrCol == 1) {
$NbrLigne++;
echo "<tr>";
$fintr = 0;
}
echo '<td>';
// AFFICHAGE des DONNEES de la fiche
echo $ref;
echo '<br />';
echo $page;
echo '<br />';
echo $autdat;
// ------------------------------------------
echo '</td>';
if ($j%$NbrCol == 0) {
echo "</tr>";
$fintr = 1;
}
$j++;
}
if ($fintr!=1) { echo '</tr>'; }
echo '</table>';
} else {
echo 'Pas de photo pour le moment';
}
mysql_close();
le résultat est que je n'ai que la dernière donnée des 6 données...pouvez-vous me dire comment faire apparaître toutes les données, svp.
cela fait presque 2 semaines que je cherche...
merci pour votre aide