gestion panier... [Résolu] - PHP - Programmation
Marsh Posté le 02-06-2005 à 14:47:51
eh bien:
$SESSION['panier']["categorie"] = "voiture";
$SESSION['panier']["produit"] = "clio";
$SESSION['panier']["qte"] = "1";
Marsh Posté le 02-06-2005 à 14:52:44
mais la ton panier il ne pourra avoir q'un seul produit , certe avec une quantité variable mais tu ne pourras pas avoir plusieurs produits.
Marsh Posté le 02-06-2005 à 15:10:17
benamoubeach a écrit : mais la ton panier il ne pourra avoir q'un seul produit , certe avec une quantité variable mais tu ne pourras pas avoir plusieurs produits. |
ok , c'est résolu, j'ai changé mon panier:
Code :
|
mais maintenant, j'ai le problème suivant:
je prend un article de la categorie voiture, ça ecrit, 'vous avez 1 voiture'.
ensuite, si je prends un article de la catégorie fleur, ça écrit: 'vous avez 2 fleurs', donc je dois mal faire mon incrémentation, mais je vois pas...
en fait j'ai le nombre total d'articles, mais il me faudrait le nombre d'articles par catégories
Marsh Posté le 02-06-2005 à 15:33:36
Forcément, là (en oubliant le fait que $_SESSION soit lui-même un tableau), tu as un tableau d'une dimension contenant 3 valeurs. Tu dois passer en un tableau de n dimension contenant chacune les 3 valeurs
Manque donc une dimension dont l'indice doit être variable
Marsh Posté le 02-06-2005 à 16:09:38
naceroth a écrit : Manque donc une dimension dont l'indice doit être variable |
je comprends pas...
tu veux un tableau du style $_SESSION['panier'][$i] ???????
Marsh Posté le 02-06-2005 à 16:27:10
(je m'exprime en français en général pourtant non ? )
J'ai dit une dimension dont l'indice doit être variable, pas une dimension dont l'indice doit être UNE variable. En clair, pour pouvoir différencier deux articles du panier, faut bien quelque part un élément qui les différencie. Hors dans ton exemple, tout les noms d'indices sont constants
Tu pourrais faire, par exemple :
$_SESSION['panier']['voiture']['clio']['Qté'] = 1
ou
$_SESSION['panier'][0]['catégorie'] = 'voiture'
$_SESSION['panier'][0]['produit'] = 'clio'
etc...
Marsh Posté le 02-06-2005 à 16:33:22
que penses-tu de ça...
Code :
|
mais il y a un problème à la fin, ça écrit :
"vous avez un article dans la categorie array", c'est débile!!!
mais bon, c'est sûrement que je ne stocke pas la bonne chose dedans...
Marsh Posté le 02-06-2005 à 16:49:07
Le message n'est pas débile, il est logique, $_SESSION['panier']['categorie'] est bien un tableau
On va partir de mon deuxième exemple, qui est plus "sain" que le premier :
Code :
|
Là, c'est le listage le plus basique, à toi de le modifier à ta guise pour les regrouper par catégorie par exemple
//edit : pour comprendre comment ça marche, fait un tableau simple, hors session et regarde avec print_r comment il va se représenter. Ajoute des éléments jusqu'à maitriser le truc
Marsh Posté le 03-06-2005 à 10:09:47
ouf, je m'en suis sorti...mais j'ai du modifier mon panier:
Code :
|
enfin, maintenant, ça marche
par contre, j'ai un soucis du fait que quand je suis sur 1 page pour selectionner un article, si j'appuie sur le bouton "ajouter", ça ajoute au panier et je suis sur la page ajouter.php.
mais si je vais à la page précédente et qu'ensuite je retourne à ajouter.php (grâce aux flêches en haut du navigateur...) il me remet le dernier article selectionné dans le panier!
il faudrait donc que je puisse faire un test sur le fait quer l'on appuie bien sur le bouton "ajouter"...
quelqu'un peut-il me dire comment m'y prendre...?
merci
Marsh Posté le 03-06-2005 à 16:56:57
Ca ne fonctionnera pas, si tu utilises les boutons précédent/suivant, tu repostes le formulaire tel quel. Y compris le bouton sur lequel tu as appuyé.
Faut plutôt se diriger vers un système d'header entre ajouter.php et ta page de sélection.
Marsh Posté le 04-06-2005 à 17:55:54
euh...d'accord, mais je sais pas du tout comment ça marche le header...je vais me renseigner...
Marsh Posté le 02-06-2005 à 14:28:16
bonjour,
je mesuis défini un panier de cette façon, mais je ne suis pas sûr que cela soit très efficace...
j'aimerai savoir comment augmenter la quantité d'un produit donné (par exemple, catégorie voiture, produit clio, quantité 1)
merci
Message édité par jerome134 le 06-06-2005 à 09:40:29