Probleme d'extraction d'une table sql vers un tableau html

langkif Messages postés 4 Date d'inscription mardi 9 décembre 2003 Statut Membre Dernière intervention 25 mars 2005 - 25 mars 2005 à 12:56
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 - 25 mars 2005 à 17:46
Bonjour,





j'ai un petit soucis. Je prepare un syteme de commande en ligne pour ma
boite, et je dois extraire une liste de produit contenu dans une table
de ma base de données sql vers un tableau html, avec sur chaque ligne
un champs de saisi pour la quantité souhaité et un bouton de
validation. Le systeme fonctionne sur tout le tableau, mais pas sur la
premiere ligne, je comprend pas. Sur la premiere ligen, quand je
clique, il me réaffiche ma page, alors que pour toutes les autres
lignes, il m'envoi vers le bon lien, avec les valeurs en parametre...





Voici mon code:





******************************************


//Requete de recherche de tous les articles pour affichage dans le tableau


$requete="SELECT * FROM produits";


$resaffiche=mysql_query($requete) or die ("Erreur lors de l'exectution de la requete");





//Entete du tableau


echo "\";

echo \"----
\";

echo \"Numero, \";

echo \"Liste, \";

echo \"Désignation, \";

echo \"Prix, \";

echo \"Remarque, \";

echo \"Qté, \";

echo \"Ajouter, \";

echo \"\";

$x=1;

while ($ligne=mysql_fetch_array($resaffiche))

{

extract($ligne);

echo \"----
\";

echo \"<form method='post' action=\"test.php?qte=$qte&numero=$numero\" >$numero, \";

echo \"$liste, \";

echo \"$designation, \";

echo \"$prix, \";

echo \"$remarque, \";

echo \", \";

echo \"</form>, \";

echo \"\";

}

//

echo "
";


******************************************





Si quelqu'un a 5 minutes a perdre! :o)





Merci.





Matthieu

7 réponses

langkif Messages postés 4 Date d'inscription mardi 9 décembre 2003 Statut Membre Dernière intervention 25 mars 2005
25 mars 2005 à 13:34
Bon, en fait, j'ai plus de probleme que ca... j'ai du mal a faire
passer la quantité en parametre. Mettre un formulaire sur chaque ligne
me semblait la seule solution. A priori, il y a autre chose que je n'ai
pas bien saisi. Une fois il ne me passe pas la quantité en parametre,
ensuite il garde toujours la meme vaeur pour la variable... Quelqu'un
voit comment je peut faire pour que ca fonctionne a chaque fois?!



Merci encore!!
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
25 mars 2005 à 17:12
Bonjour,

deja tu peux rendre ton code plus aux normes :


<li> <TABLE> <TD> ... => <table> <td></li>
<li>width="x" height="y" border="z" => style="width: x; height: y; border: z px; ... "</li>
<li>echo "" => echo '';</li>
<li>Les atributs style='' => style=""</li>
<li> ...

</li>


<hr size="2" width="100%">
Si ma reponse te convient, merci de l'accepter !
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
25 mars 2005 à 17:15
Perso, j'aurais plutôt fait ça comme ça :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//FR" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>COMMANDE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
table {
width:100%;
border-color:#808080;
border-style:solid;
border-collapse:collapse;
text-align:center;
}
th {
text-align:center;
background-color:#CCFFCC;
font-weight:bold;
}
</style>
</head>

<form method="post" action="test.php">
<!-- Entete -->
Num&eacute;ro |
Liste |
D&eacute;signation |
Prix |
Remarque |
Qt&eacute; |
Ajouter |

<?php
//Requete de recherche de tous les articles pour affichage dans le tableau
$requete ='SELECT * FROM produits'
;
$resaffiche=mysql_query($requete) or die ('Erreur lors de l\'exectution de la requete'
);
$numLigne=0
;
while ($ligne=mysql_fetch_array($resaffiche
))
{
$numLigne
++;
echo '----

',$ligne['numero'],
',
',$ligne['liste'],
',
',$ligne['designation'],
',
',$ligne['prix'],
',
',$ligne['remarque'],
',
,$numLigne,
']" type="text" size="5" />,
,
';
}
?>



</form>

</html>

Avec un seul bouton à la fin pour tout envoyer d'un coup, non ?
En fait, ça dépend de ta table «commande», as-tu un enregistrement par commande, ou un enregistrement par ligne de commande ?
Au passage, essaye de noter toutes les différences pour rendre le code un peu plus propres

Arn;o)
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
25 mars 2005 à 17:16
bataille !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
25 mars 2005 à 17:24
bataille ?

$numLigne=0
;
$numLigne++;
"qte[', $numLigne, ']"

Pourquoi ne pas faire directement "qte[]" ou si'il y a un id : "qte[', $ligne['id'], ']"


<HR width="100%" SIZE=2>
Si ma reponse te convient, merci de l'accepter !
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
25 mars 2005 à 17:36
jojo> «bataille» comme au jeu de carte, qd tu poses la même carte en même tps que qqn d'autre, il faut dire "bataille". Là on avait poster presqu'en même tps... c'était juste une petite note d'humour sans prétention, idéal pour la fin de la semaine ;o)

Effectivement, $qte[] c'est bien mieux. Pas besoin de $numLigne.

Qu'est-ce qu'il en dit langkif ?

Arn;o)
0
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
25 mars 2005 à 17:46
Ah, ok. Je n'avais pas fait le lien ... .
Sinon, non, ton code à toi est bien mieux !


<HR width="100%" SIZE=2>
Si ma reponse te convient, merci de l'accepter !
0
Rejoignez-nous