Panier et transfert de variable
Bonjour,
Encore un problème, cette fois-ci, ce n'est plus sur le panier, mais sur la page suivante qui insère les données dans ma BDD.
Code du panier :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| <?
if (creationPanier())
{
$nbArticles=count($_SESSION['panier']['Reference']);
if ($nbArticles <= 0)
echo "<tr><td><font face='arial' size='2' color='#000066'>Votre panier est vide </font></ td></tr>";
else
{
for ($i=0 ;$i < $nbArticles ; $i++)
{
$prod="SELECT * FROM Produit WHERE Reference=".$_SESSION['panier']['Reference'][$i]."";
$res_prod=mysql_query($prod)
or die (mysql_error());
while ($data = mysql_fetch_assoc($res_prod))
{ extract($data);
$prix_unit_HT= round(($data['PrixUnitaire'] * ($data['QteMoyen']) * ($data['QteColis']) * ($_SESSION['panier']['QteCommandee'][$i])), 2);
$MontantGlobal += $prix_unit_HT;
echo "<tr></tr>";
echo "<tr>";
echo "<td><font face='arial' size='2' color='#000066'>".htmlspecialchars($_SESSION['panier']['Reference'][$i])."</font></td>";
echo "<td><font face='arial' size='2' color='#000066'>".$data['NomProduit']."</font></td>";
echo "<td><font face='arial' size='2' color='#000066'>".$data['Designation']."</font></td>";
echo "<td align='center'><font face='arial' size='2' color='#000066'>× ".$data['QteColis']."</font></td>";
echo "<td align='center'><font face='arial' size='2' color='#000066'>".$data['QteMoyen']."</font></td>";
echo "<td align='center'><font face='arial' size='2' color='#000066'><input type=\"text\" size=\"2\" name=\"QteCommandee[]\" value=\"".htmlspecialchars($_SESSION['panier']['QteCommandee'][$i])."\"/></font></td>";
echo "<td align='right'><font face='arial' size='2' color='#000066'>".$data['PrixUnitaire']." / ".$data['UniteVente']."</font></td>";
echo "<td align='right'><strong><font face='arial' size='2' color='#000066'>$prix_unit_HT </font></strong></td>";
echo "<td align='center'><a href=".htmlspecialchars("panier.php?action=suppression&r=".rawurlencode($_SESSION['panier']['Reference'][$i]))."><img src='/img/croix.jpg' border='0' /></a></td>";
echo "</tr>";
echo "<tr><td colspan=\"3\"> </td>";
echo "<td colspan=\"3\" align='right'><font face='arial' size='3' color='#0066CC'><b>";
}
}
echo "Total estimatif : ".number_format($MontantGlobal,2)." ";
echo "</b></font></td></tr>";
echo "<tr><td colspan=\"2\">";
echo "<input type=\"submit\" value=\"Rafraichir\"/>";
echo "<input type=\"hidden\" name=\"action\" value=\"refresh\"/>";
echo "</td></tr>";
}
}
?> |
Code d'insertion dans la BDD :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
<?
$prod="SELECT * FROM Produit WHERE Reference='".$_SESSION['panier']['Reference'][$i]."'";
$res_prod=mysql_query($prod)
or die (mysql_error());
while ($data = mysql_fetch_assoc($res_prod))
{ extract($data);
$ref=$_SESSION['panier']['Reference'];
$qte=$_SESSION['panier']['QteCommandee'];
$prix=(($data['PrixUnitaire']) * ($data['QteMoyen']) * ($data['QteColis']) * ($_SESSION['panier']['QteCommandee'][$i]));
}
$nbArticles=count($_SESSION['panier']['Reference']);
if ($nbArticles <= 0)
exit ("Votre panier est vide. La commande ne peut être finalisée.");
else
{
for ($i=0 ;$i < $nbArticles ; $i++)
{
$requete ="INSERT INTO LigneCommande (LC_Id,Lc_IdCommande,LC_IdProduit,LC_Quantite,LC_MontantTTC,LC_MontantTVA) VALUES ('','".$res_num_cde['MaxNumCde']."','".$ref[$i]."','".$qte[$i]."','".$prix[$i]."',19.6)";
$rq_insert = mysql_query($requete) or die ('Erreur '.$requete.' '.mysql_error());
}
}
?> |
C'est donc la variable $prix (voir en gras) qui ne s'insère pas dans la BDD, il y a toujours 0.00
J'ai essayé pas mal de choses mais là je commence à être perdu dans ce "bordel" de code.
Merci pour votre aide.