Afficher une entrée de table SQL par cellule html

bbreaker Messages postés 3 Date d'inscription vendredi 19 octobre 2001 Statut Membre Dernière intervention 27 janvier 2015 - 27 janv. 2015 à 11:44
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 27 janv. 2015 à 19:58
Bonjour, je bloque sur mon script depuis un moment, j'explique, j'aimerais que chaque ligne de ma table sql s'affiche dans une cellule de mon tableau, avec en entête l'id, une case avec la donné de la première colonne, une autre avec la deuxième et une autre avec la troisième.

--------------------------------------------------------------
I l'Id I l'Id I etc......
--------------------------------------------------------------
I nbcle I nbcle I etc........
--------------------------------------------------------------
I util I util I etc.........
--------------------------------------------------------------
I idcle I idcle I etc..........
--------------------------------------------------------------

shematisé


le code :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<html>

<head>
<style type="text/css">
table
{
border-collapse: collapse;
}
td, th
{
border: 1px solid black;
}
</style>
</head>

<body>

<?php $mysql_server = 'localhost:3307';
$mysql_database = 'machin';
$mysql_table = 'truc';
$mysql_username = 'root';
$mysql_password = '';
$db = mysql_connect($mysql_server, $mysql_username, $mysql_password) or die('Failed to connect to database server!<br>'.mysql_error($db));
mysql_select_db("machin");
?>
<table>

<?php $sql = "SELECT id FROM truc";
$rep = mysql_query("$sql") ;
while($data = mysql_fetch_array($rep)){?>

<caption><?php echo $data['id'] ;}?></caption>
<tr>
<th>Dispo :</th>
<?php $sql = "SELECT nbcle FROM truc" ;
$rep = mysql_query("$sql") ; ?>
<?php while($data = mysql_fetch_array($rep)){?>

<td><?php echo $data['nbcle'] ;}?></td>

</tr>
<tr>
<th>Util. :</th>
<?php $sql = "SELECT util FROM truc ";
$rep = mysql_query("$sql") ; ?>
<?php while($data = mysql_fetch_array($rep)){?>

<td><?php echo $data['util'] ; }?></td>


</td>
<tr>
<th>Id :</th>
<?php $sql = "SELECT idcle FROM truc ";
$rep = mysql_query("$sql") ; ?>
<?php while($data = mysql_fetch_array($rep)){?>

<td><?php echo $data['idcle'] ;}?></td>

</tr>

</table>

</body>
</html>

4 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
27 janv. 2015 à 12:00
Bonjour,


Deux soucis pour la bonne compréhension de ton souci
- Tu utilises des noms "virtuels" pour tes tables .. champs......
hors.. on ne sais pas si "truc" .. est identique pour chacune de tes requêtes ou s'il s'agit de tables différentes....

- Tu nous dis que tu bloques.... ce que tu aimerais faire.... et tu nous balances ton code.... ok.... mais.... QUEL EST LE SOUCI EXACTEMENT ?
C'est à dire .....Qu'obtiens tu ? ... et en quoi ça ne te conviens pas ???

0
bbreaker Messages postés 3 Date d'inscription vendredi 19 octobre 2001 Statut Membre Dernière intervention 27 janvier 2015
27 janv. 2015 à 13:35
Bonjour et merci pour ta reponse, c est la première fois que je poste sur ce forum désolé. Pour repondre a ta question il m affiche bien les donnes mais sur une l une a côté de l autre
j aimerais que les données s affiche dans des cellules séparé par "id" avec 3 lignes par cellule chaque cellule contenant une ligne de ma table sql
ma table sql est "truc"
4 colonne id,nbcle, util et idcle

Le code est un peut lourd je le conçoit. , si il y aplus simple je suis preneur,
0
bbreaker Messages postés 3 Date d'inscription vendredi 19 octobre 2001 Statut Membre Dernière intervention 27 janvier 2015
27 janv. 2015 à 17:23
une image vaux mieux qu'un long discours

0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
Modifié par jordane45 le 27/01/2015 à 19:58
C'est bien ce que je pensais...

Donc.. tu ne fais q' UNE seule requête qui te remonte tout.
un truc du genre:

$sql="SELECT id 
                ,nbcle
                ,util
                ,idCle
        FROM truc";


Ensuite.. tu boucles sur le résultat ... et pour Chaque ligne ... tu créés une TABLE contenant les infos que tu souhaites afficher.

$result = mysql_query($sql) or Die('<br>Erreur requête<br> :'.$sql);

while ($row = mysql_fetch_array($result )) { 
  echo "<table id='".$row['id']."'>";
  echo "<tr><td> ".$row['nbcle']."</td></tr>";
  echo "<tr><td> ".$row['util']."</td></tr>";
  echo "<tr><td> ".$row['idCle']."</td></tr>";
  echo "</table>";

}



Bien sûr... tu peux stocker ces tableaux dans des TD d'UN plus gros tableau....

Essayes de le faire en partant de ceci ... et si tu bloques toujours reviens nous voir ( en nous mon montrant le code essayé)





Cordialement,
Jordane
0
Rejoignez-nous