Encore un problème de caddie

Répondre
caporga
le 17/09/2007 à 12:35
caporga
Salut la communauté, malheureusement j'ai encore besoin de vos lumières.

voilà mon problème. après moultes problèmes je suis arrivé à un code cohérent seul la suppression me pose un probleme, Elle me supprime plusieurs articles en même temps (si il y a 3 articles ça me supprime 2) (5 -> 3)... infos supplèmentaires,pour des raisons pradique je ne fonctionne qu'avec un seul articles.

merci, a+
cap

voici le code..
<?php
session_start();
//init des variables
if (!isset($_SESSION['total'])) $_SESSION['total']=0;
if(!isset($_GET['ajoutPanier'])) $ajoutPanier="";//init de ajoutPanier si non déclaré
else $ajoutPanier=$_GET['ajoutPanier'];
if(!isset($_GET['modifPanier'])) $modifPanier="";//init de modifPanier si non déclaré
else $modifPanier=$_GET['modifPanier'];
if(!isset($_GET['suppPanier'])) $suppPanier="";//init de suppPanier si non déclaré
else $suppPanier=$_GET['suppPanier'];
if(!isset($_GET['enregistreCommande'])) $enregistreCommande="";//init de enregistreCommande si non déclaré
else $enregistreCommande=$_GET['enregistreCommande'];
if ((!isset($_SESSION['liste']))&&($ajoutPanier=="")) $liste[]=array("VIDE",1,0,0);//init de liste si VIDE
if (isset($_SESSION['liste'])) $liste=$_SESSION['liste'];//recup de la liste de la session
?>
<?php require_once('ConnexionBoutiquemx.php'); ?>
<?php
mysql_select_db($database_ConnexionBoutiquemx, $ConnexionBoutiquemx);
//----------------------------------------------------AJOUT PANIER
if ($ajoutPanier=="AJOUTER")
{
$id=$_GET['id'];
$nb=1; //par défaut la quantité est = 1
$nom_produit=$_GET['nom_produit'];
$prix=$_GET['prix'];
$texte=$_GET['texte'];
$format=$_GET['format'];
$support=$_GET['support'];
$quantite=$_GET['quantite'];
$grammage=$_GET['grammage'];
$info=$_GET['info'];
$faconnage=$_GET['faconnage'];
$photo=$_GET['photo'];
$photo1=$_GET['photo1'];
$photo2=$_GET['photo2'];
$photo3=$_GET['photo3'];
$photo4=$_GET['photo4'];
$picto1=$_GET['picto1'];
$picto2=$_GET['picto2'];
$picto3=$_GET['picto3'];
$picto4=$_GET['picto4'];
$liste[]=array($nom_produit,$nb,$prix,);
$_SESSION['liste']=$liste;
//ajoute un article à la liste
}
//----------------------------------------------------MODIF PANIER
if ($modifPanier=="ACTUALISER")
{
for ($i=0;$i<count($liste);$i++)
{
$nbi='nb'.$i;
$liste[$i][1]=$_GET["$nbi"];//recup du nbr d'article dans la liste
$liste[$i][3]=$liste[$i][1]*$liste[$i][2];//prixArticle=nbre*prixUnitaire
}
$_SESSION['liste']=$liste;//mAj de la liste
}
//----------------------------------------------------SUPP PANIER
if ($suppPanier=="SUPPRIMER")
{
$article=$_GET['article'];
for ($i=0;$i<count($liste);$i++)
{
if($article==$liste[$i][0])
array_splice($liste,$i,1);
//suppression de l'article
}
$_SESSION['liste']=$liste;//mAj de la liste
}
//----------------------------------------------------COMMANDER
if ($enregistreCommande=="COMMANDER")
{
if(!isset($_GET['action']))
$_SESSION['action']="ENREGISTRER";//mémorise l'action
header("Location: commande.php");
}
?>


le bouton de suppression

<td rowspan="2"><div align="center"><a href="panier.php?suppPanier=SUPPRIMER&article=<?php echo $row_rsPanier['nom_produit'] ?>"><img src="../images/supgif" width="20" height="20" border="0"></a></div></td>
</tr>
caporga
moogli
le 17/09/2007 à 21:05
moogli
salut,

peut tu utiliser le wall la prochaine fois stp ?

pourquoi faire une boucle alors que tu n'a qu'un article à supprimer?

tu peut simplement remplacer array_splice poar unset !

je te conseil de mettre l'id de l'article en clef primaire du tableau afin de ne pas le chercher (ensuite la quantitée etc) !

@+
Il en faut peu pour être heureux !!!!!
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours