Bonjour à tous,
Aujourd'hui j'ai un petit problème qui est que quand j'ajoute dans mon panier, je n'arrive pas à augmenter la quantité si on clique deux fois sur le même produit.
Hum, si vus d'ailleurs des idées pour un bon caddies en ligne dites moi.
je prend toutes les idées
Mon caddie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?php session_start(); $_SESSION['panier'][]=array("ref","qte"); $action=$_GET['action']; if($action==1) { //on ajoute $_SESSION['panier'][]=array("ref"=>$_GET['ref'],"qte"=>$_GET['qte']); } else if($action==2) { //on vide le panier session_destroy(); header("Location: index.php"); } echo '<a href="index.php?action=1&ref=citron&qte=2">ajout 2 citron</a><br><br>'; echo "<br><a href=\"index.php?action=2\">Vider panier</a>"; for($i=0;$i<count($_SESSION['panier']);$i++) { echo ''.$_SESSION['panier'][$i]['ref'].' '.$_SESSION['panier'][$i]['qte'].' <br>'; } ?>
Actuellement, quand on clique deux fis sur le mêmeproduits il s'ajoute sur une autre ligne du tableau.
Je voudrais que quand la référence est la même cela augmente seulement la quantité et non que cela ajoute une ligne avec des doublons.
J'espère me faire comprendre et que votre aide sera précieuse.
Amicalement akrogamers
EDIT:
J'ai tenté ceci:
En algo:
-on parcours ma session pour voir si un produit existe déjà
-Si il existe on ajoute la quantité supplémentaire.
-Sinon on ajoute dans le tableau
En code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $i=0; while($i<count($_SESSION['panier'])) { if($_SESSION['panier'][$i]['ref']==$_GET['ref']) { $_SESSION['panier'][$i]=array("ref"=>$_GET['ref'],"qte"=>$_SESSION['panier'][$i]['qte']+$_GET['qte']); } else { $_SESSION['panier'][]=array("ref"=>$_GET['ref'],"qte"=>$_GET['qte']); } }
Bon cela ne marche pas mais j'ai la méthode
EDIT: Merci à l'admin d'avoir modifié le titre c'est plus pertinent.
Partager