Bonjour,
Voilà lorsque je modifie les quantités de mon panier, $_SESSION(list]se remet à zéro, idem lorsque je fais un nouvel ajout.
J'envoie le code
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 <?php session_start(); //init des variables if (!isset($_SESSION['total'])) $_SESSION['total']=0; if(!isset($_GET['ajout'])) $ajout="";//init de ajoutPanier si non déclaré else $ajout=$_GET['ajout']; 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']))&&($ajout=="")) $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 $hostname_connectionebook = "localhost"; $database_connectionebook = "ebook"; $username_connectionebook = "root"; $password_connectionebook = ""; $ebook = mysql_connect($hostname_connectionebook, $username_connectionebook, $password_connectionebook) or die(mysql_error()); mysql_select_db('ebook',$ebook); //----------------------------------------------------AJOUT PANIER if ($ajout == "AJOUT") { $idLivre=$_GET['idLivre']; $nb=1; //par défaut la quantité est = 1 $prix=$_GET['prix']; $_SESSION['liste'][] = array ("id" => $_GET['idLivre'],"nb" => $nb,"prix" => $_GET['prix'],"prix_total" => $_GET['prix']); $_SESSION['ajout']=$ajout; } //ajoute un article à la liste //----------------------------------------------------MODIF PANIER if ($modifPanier=="ACTUALISER" ) { $article=$_GET['article']; $prix=$_GET['prix']; $nbprod=count($_SESSION['liste'][]); printf($nbprod); for ($i=0;$i<count($_SESSION['liste']);$i++) { $nbi='nb'.$i; $_SESSION['liste'][] = array ("id" => $_GET['article'],"nb" => $nbi,"prix" => $_GET['prix'],"prix_total" => $_GET['prix']*$nbi); } printf($article); print($modifPanier); $_SESSION['liste']=$liste;//mAj de la liste }
html
merci d'avance
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 <?php $total=0.00; for ($i=0;$i<count($_SESSION['liste']);$i++){ $query_rsPanier="select * from livre where idLivre = '".$_SESSION['liste'][$i]['id']."'"; $rsPanier = mysql_query($query_rsPanier, $ebook) or die(mysql_error()); $row_rsPanier = mysql_fetch_assoc($rsPanier); $_SESSION['titre']=$row_rsPanier['titre']; ?> <tr class="lignepanier"> <td align="left"><?php echo $_SESSION['titre'] ; $article=$row_rsPanier['idLivre'];?></td> <td> <select name="nb<?php echo $i ?>" id="nb"> <option value="1" <?php if($_SESSION['liste'][$i]['nb']==1) echo "SELECTED"; ?>>1</option> <option value="2" <?php if($_SESSION['liste'][$i]['nb']==2) echo "SELECTED"; ?>>2</option> <option value="3" <?php if($_SESSION['liste'][$i]['nb']==3) echo "SELECTED"; ?>>3</option> </select> <input type="hidden" name="article" value="<?php echo $row_rsPanier['idLivre'];?>"/> <input type="hidden" name="prix" value="<?php echo $row_rsPanier['prix_eyrolles'];?>"/> </td> <td><?php echo $row_rsPanier['prix_eyrolles'] ?></td> <td><?php echo $row_rsPanier['prix_eyrolles'] * $_SESSION['liste'][$i]['nb']?> EUR</td> <td align="right"> <img src="images/mettredecote.gif"/><br/> <a href="panier.php?suppPanier=SUPPRIMER&article=<?php echo $row_rsPanier['idLivre'] ?>"> <img src="images/supprimerpanier.gif"/> </a> </td> </tr> <?php $total+=$row_rsPanier['prix_eyrolles'] * $_SESSION['liste'][$i]['nb']; $_SESSION['total']=$total;//mAj du total dans la session ?> <tr class="interlignepanier"><td></td></tr> <tr class="lignepanierbottom"> <td align="left">TOTAL </td> <td></td> <td></td> <td><?php echo $total ?> EUR</td> </tr> </table> <p> Vous avez modifié une quantité? </p> <p class="form"> <input type="image" src="images/mettreajour_panier.gif" name="modifPanier" value="ACTUALISER"/><?php }?>
Partager