J'ai un petit problème avec mon code php et sql aussi je crois
Voila, je choisis dans mon panier les articles que les membres ont commandé.
Ma table panier est composée comme ça :
id, membre, id_produit
Le problème, c'est que lorsque je sélectionne un membre pour afficher ses produits, il m'affiche tous les produits à la suite, donc par exemple les produits 1, 15, 32 s'affichent 11532
et de par ce fait, impossible de mettre en forme l'affichage des produits.
Voila le code :
<?php
// on recupere les produits du membre
$sql="SELECT id_produit FROM panier WHERE membre='$username' AND validate='0' ORDER BY id_produit";
$req= mysql_query($sql) or die('Erreur !<br /><br /> Aucun produit dans votre panier');
while($data=mysql_fetch_assoc($req)){
echo "{$data["id_produit"]}";// optionnel, c pour vous montrer
}
// on recupere les produits en fonction des id produits
$sql2="SELECT produit FROM boutique WHERE id='$data[id_produit]'";
$req2= mysql_query($sql2) or die('Erreur SQL !<br />'.$sql2.'<br />'.mysql_error());
while($data2=mysql_fetch_assoc($req2)){
echo "{$data2["produit"]}"; // on affiche le nom du produit
echo "{$data2["image"]}"; // on affiche son image
echo "{$data2["prix"]}"; // on affiche son prix
}
?>
Voici votre panier :
<?php
echo '<br/>';
echo "<br/>
<form method='validate'>
<input type=submit name='validate' value='Valider la commande'\><br>
</form>
";
echo '<br/>';
if (isset($_POST['validate'])) {
$validate="UPDATE panier WHERE membre='$username' AND id_produit='$data[id_produit]' SET validate='$data[id_produit]'";
$req= mysql_query($ajout);
if ($req) { // si le insert s'est correctement déroulé
header("Location: index.php?site=panier");
echo 'Commande validée';
}
else { // sinon
echo 'Vous n\'avez aucun produit dans votre panier ou votre commande est validée';
}
}
// affichage des liens quoi qu'il arrive
echo '<a href="index.php?site=panier">Voir votre panier</a><br/>';
echo '<br/>';
echo '<a href="index.php?site=boutique">Retour à la boutique</a>';
?>
Si vous pouvez m'aider, merci d'avance.