Affichage de données venant d'une DB mysql dans 1 tablo html

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Affichage de données venant d'une DB mysql dans 1 tablo html

par zeus » 24 juin 2005, 16:06

Tu voulais quelle couleur et tu obtient laquelle ?

par sausee2005 » 24 juin 2005, 16:03

je sors

par jimmy28 » 24 juin 2005, 15:54

Une autre petite question :

Lorsque je mets mon code de couleur pour mes cellules, la couleur affichée n'est pas la bonne, aurais-je un pb de synthaxe?????


//CREATION DE MON TABLEAU

$tablo="<CENTER><TABLE width=90% border=15>";
$tablo.="<TR><TD align=center width=10% BGCOLOR='#e000ff'><B>CODE PRODUIT</TD>>";
$tablo.="<TD align=center width=80% BGCOLOR='#e000ff'><B>DESIGNATION</TD>";
$tablo.="<TD align=center width=10% BGCOLOR=#e000ff><B>PRIX</TD>";
$tablo.="<TD align=center width=10% BGCOLOR=#e000ff><B>QUANTITE</TD>";
$tablo.="</TR>";

while($row=mysql_fetch_array($req_tableau, MYSQL_NUM))
{
$tablo.="<TR><TD align=center width=10%>$row[1]</TD>
<TD align=center width=70%>$row[2]</TD>
<TD align=right width=10%>$row[3]</TD>
<TD align=center width=10%>$row[4]</TD>
</TR>";
}
$tablo.="</TABLE>";
echo $tablo;

par jimmy28 » 24 juin 2005, 14:27

Merci beaucoup
Je suis vraiment trop bete, je n'avais pas calculé que de vais mettre la synthaxe de mon tableau html dans la variable $tablo.

Encore merci

par mere-teresa » 24 juin 2005, 14:24

Regarde le HTML que tu obtiens :) regarde à côté le HTML que tu voudrais obtenir...et ajuste ton code (si tu le comprends).

Petite question : pourquoi n'as-tu pas gardé les conditions de ton while initiales, s'il t'affichait tous les résultats ?
 while ($row=mysql_fetch_array($tablo, MYSQL_NUM)){
//construction du tablo_a_afficher
} 

par jimmy28 » 24 juin 2005, 14:21

ok merci.
Ceci dit, il m'affiche bien le contenu de $tablo mais pas du tout formaté.Hors je voudrais insérer ces donnees dans mon tableau html à la place des points rouges:

<CENTER>
<TABLE width=80% border=10>
<TR>
<TD align=center width=10% BGCOLOR="$CCCCCC">Code Produit</TD>
<TD align=center width=70% BGCOLOR="$CCCCCC">Designation</TD>
<TD align=center width=10% BGCOLOR="$CCCCCC">Prix</TD>
<TD align=center width=10% BGCOLOR="$CCCCCC">Quantité</TD>
</TR>
<TR>
<TD align=center width=10%>............</TD>
<TD align=center width=70%>.............</TD>
<TD align=center width=10%>.............</TD>
<TD align=center width=10%>..............</TD>
</TR>
</TABLE>

par zeus » 24 juin 2005, 14:15

- Tu n'as pas initialisé $nbligne au nombre de ligne de ta base
- c'est echo $a qui affiche 0

par jimmy28 » 24 juin 2005, 14:10

je viens de corriger mon erreur et lorsque j'affiche "echo $tablo", il m'affiche la valeur 0.

Je ne comprends pas bien le principe de fonctionnement de ta routine

par mere-teresa » 24 juin 2005, 14:08

$tablo="<table>";
$a=0;
while($a<$nbligne){
$tablo="<tr><td>".$a."</td></tr>";
$a=$a+1;
echo $a;
}
$tablo="</table>";
echo $tablo;
Tu a mis = au lieu de .=

par jimmy28 » 24 juin 2005, 13:48

désolé j'ai oublié le code:


$tablo="<table>";
$a=0;
while($a<$nbligne){
$tablo="<tr><td>".$a."</td></tr>";
$a=$a+1;
echo $a;
}
$tablo="</table>";
echo $tablo;

par jimmy28 » 24 juin 2005, 13:45

voici ce que j'ai fait et ca ne marche pas, y aurait-il un probleme de synthaxe???

par mere-teresa » 24 juin 2005, 12:47

echo $row[0]." ".$row[1]." ".$row[2]." ".$row[3]." ".$row[4]."<br>";
Ben dans ton while tu construis une ligne de tableau HTML à chaque fois, tout simplement.
Avant ton while, tu initialises ta variable avec <table> et après le while tu finis le tableau avec </table>

$tablo_a_afficher = "<table>";
//posage de requete
while(/*traitement resultats*/){
$tablo_a_afficher .= "<tr><td>".$madonne."</td></tr>";
}
$tablo_a_afficher .= "</table>";
echo $tablo_a_afficher;

par jimmy28 » 24 juin 2005, 12:20

Voici mon code pour etre plus précis:


<html>

<head>
<title>Votre Panier</title>
</head>

<body>

<?php
mysql_connect ($serveur,$ID,$MDP);
mysql_select_db ($DBname) or die ('ERREUR'.mysql_error());
$code=$_POST["code"];
$designation=$_POST["designation"];
$prix=$_POST["prix"];
$quantite=$_POST["quantite"];
$req="INSERT INTO articles (code,designation,prix,quantite) VALUES ('".$code."','".$designation."','".$prix."','".$quantite."')";
mysql_query($req) or die ('ERREUR '.mysql_error());
$tablo=mysql_query("SELECT * FROM articles");
$nblignes=mysql_num_rows(mysql_query("SELECT * FROM articles"));
echo $nblignes.' lignes';

while ($row=mysql_fetch_array($tablo, MYSQL_NUM)){
echo $row[0]." ".$row[1]." ".$row[2]." ".$row[3]." ".$row[4]."<br>";
}

?>

<CENTER>
<TABLE width=80% border=10>
<TR>
<TD align=center width=10% BGCOLOR="$CCCCCC">Code Produit</TD>
<TD align=center width=70% BGCOLOR="$CCCCCC">Designation</TD>
<TD align=center width=10% BGCOLOR="$CCCCCC">Prix</TD>
<TD align=center width=10% BGCOLOR="$CCCCCC">Quantité</TD>
</TR>
<TR>
<TD align=center width=10%>Code Produit</TD>
<TD align=center width=70%>Designation</TD>
<TD align=center width=10%>Prix</TD>
<TD align=center width=10%>Quantité</TD>
</TR>
</TABLE>


</body>

</html>

par jimmy28 » 24 juin 2005, 12:17

Ok merci, effectivement ca marche, par contre, j'aimerais qu'il remplisse automatiquement mon tableau (si c possible avec une fonction) sinon je fais une routine moi meme du genre "do...loop".


Admettons : 1 base avec 3 champs et 10 enregistrements,
si je fais une requete "select * from table", tous mes enregistrements seront selectionnés mais je souhaite qu'il m'ajoute une ligne de tableau avec les données correspondantes à chaque enregistrement.....

j'espere que je suis assez clair!!!!

merci à tous de votre aide!!!c'est vraiment sympa

par castelli » 24 juin 2005, 12:03

alors sa marche jimmy??

(sinon mets nous ton code.. )