je souhaite créer un tableau avec html table/tr/th et en php echo ... td ... le problème c'est que quand j'affiche ma première colonne ca s'affiche bine dans la colonne pos mais quand j affiche la deuxième colonne "ville" il s'affiche en dessous de pos et pas dans le th "ville" comment faire pour que chaque collone de mes requetes soient afficher dans chaque th
voici le code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
define('DB_SERVER', 'localhost'); // serveur mysql
define('DB_SERVER_USERNAME', 'root'); // nom d'utilisateur
define('DB_SERVER_PASSWORD', ''); // mot de passe
define('DB_DATABASE', 'classement'); // nom de la base
$connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,
DB_SERVER_PASSWORD)
or die('Impossible de se connecter : ' . mysql_error());
// sélection de la base de données
mysql_select_db(DB_DATABASE, $connect);
$sql = 'SELECT pos FROM general order by pos';
$req = mysql_query($sql);
while($resultat = mysql_fetch_assoc($req)){
foreach ($resultat as $valeur)
{
echo '<tr><td>'.$valeur.'</td></tr>';
}
}
$sql2 = 'SELECT ville FROM general';
$req2 = mysql_query($sql2);
while($resultat2 = mysql_fetch_assoc($req2)){
foreach ($resultat2 as $valeur2)
pour commencer tu n'as pas besoin de faire 2 requêtes pour ça, essaye quelque chose dans ce style :
$sql = 'SELECT pos, ville FROM general order by pos';
$req = mysql_query($sql);
while ($resultat = mysql_fetch_assoc($req)) {
echo '<tr><td>'.$resultat['post'].'</td><td>'.$resultat['ville'].'</td></tr>';
}
Non perreet il a raison il faut bien mettre <th> pour avoir des titres de colonnes en gras, c'est fait pour
et sa partie de code n'est pas correcte:
while($resultat2 = mysql_fetch_assoc($req2)){
foreach ($resultat2 as $valeur2)
{
echo '<tr><td>'.$valeur2.'</td></tr>';
}
}
car à chaque boucle foreach il fait un <tr> donc une nouvelle ligne
il faut soit faire comme dit TheBiShop
soit faire:
while($resultat2 = mysql_fetch_assoc($req2)){
echo '<tr>'; // une nouvelle ligne à chaque ligne de résultats
foreach ($resultat2 as $valeur2)
{
echo '<td>'.$valeur2.'</td>';
}
echo '</tr>';
}