kida Posté 26 Juin 2005 Posté 26 Juin 2005 Boujour à tous, Voilà 2 ou 3 jours que galère avec mes qte pour mon caddy php. Le truc c'est qu'il ne prend en compte que le dernier article insérer dans le caddie et change la quantité dans tous les autres articles. Je n'arrive pas à comprendre ??? Si une bonne âme pouvait m'aider je l'en remercie d'avance. Si vous voulez testé, c'est ici: http://gaellebob.free.fr/boutik_pot.php]Boutique Voici le code: <? if(!isset($_SESSION['caddie'])) { echo "Votre caddie est vide !"; } else { require_once('connexion.php'); foreach($_SESSION['caddie'] as $_SESSION['caddie']['prod']) {if(empty($_POST)){$t=$_GET['table'];}else{$t=$_POST['t']; for($i=0;$i<count($_POST['id']);$i++) { $id=$_POST['id'][$i]; for($x=0;$x<count($_POST['qte']);$x++) { $qte=$_POST['qte'][$x]; } }} $sql='Select id,ref,nom,prix FROM '.$t.' WHERE id="'.$_SESSION['caddie']['prod'].'"'; $res=mysql_query($sql) or die ('Erreur SQL!'.$sql.mysql_error()); while($val=mysql_fetch_array($res)) { $tva=19.6; $prix_ligne=$val['prix']*$qte; $prix_tot_ht+=$prix_ligne; $prix_temp=($prix_tot_ht*$tva)/100; $prix_tot_ttc=$prix_tot_ht+$prix_temp; echo "<tr>"; ?> <td height="30"> </td> <td height="30"><? echo $val['ref']; ?></td> <td height="30"><? echo $val['nom']; ?></td> <td height="30"> <? echo $val['prix']; ?> €</td> <td height="30"><select name="qte[]" class="text" id="qte[]" OnChange="return Recharge();"><option value="" selected>Choix</option><?php$query = mysql_query("SELECT * FROM quantite ORDER BY id"); while ($data = mysql_fetch_array($query )) { if(isset($qte) && ($qte==$data['qte'])) {?><option value="<? echo $data['qte']; ?>" selected><? echo $data['qte']; ?></option><? } else {?><option value="<? echo $data['qte']; ?>"><? echo $data['qte']; ?></option><?php }} mysql_free_result($query ); ?></select><input type="hidden" name="id[]" value="<? echo $val['id']; ?>"><input type="hidden" name="t" value="<? echo $t; ?>">
Vincent Posté 26 Juin 2005 Posté 26 Juin 2005 les objets et les variables que tu manipules ont le meme nom. <select name="qte[]" class="text" id="qte[]" OnChange="return Recharge();"> il faut faire varier selon l'id pour arriver à <select name="qte1" class="text" id="qte[]" OnChange="return Recharge();"><select name="qte2" class="text" id="qte[]" OnChange="return Recharge();"> pour rendre le nom de l'objet variable, concatene le avec l'id echo "<select name=\"qte".$id."\" class=\"text\" id=\"qte".$id."\" OnChange=\"return Recharge();\">
kida Posté 26 Juin 2005 Auteur Posté 26 Juin 2005 D'accord, mais je pensai qu'avec les [] chaque select avait un nom different. du style: qte[1],qte[2],qte[3] ... Sinon comment se récupère : <select name=\"qte".$id."\" , comme avec les crochets ou des $_POST simple. Je galère vraiment avec ça, ,si tu as d'autres conseille à me filer je dit pas non ??? Merci
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant