cs_jereln
Messages postés10Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention 1 octobre 2009
-
24 janv. 2008 à 10:58
cs_jereln
Messages postés10Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention 1 octobre 2009
-
24 janv. 2008 à 20:25
je suis en train de créer un panier à l'aide de sessions. J'ai une première page catalogue (index.php) où sont listés mes articles. Chacun d'eux a un bouton submit pour l'ajouter au panier.
Ma deuxième page (cart.php) doit lister tous les articles de mon panier. J'y ai aussi un lien pour revenir à la page catalogue.
Mon problème vient des sessions : je n'arrive pas à ajouter plusieurs articles au panier. Je ne visualise que le dernier article choisi.
d'où vient mon problème, pourquoi ne puis-je pas ajouter de nouveau article? Je tourne en rond, d'habitude je bosse avec des bases de données, alors les sessions, je ne connais pas trop, et j'ai beau faire des recherches sur le net, je n'y arrive pas.
cs_jereln
Messages postés10Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention 1 octobre 2009 24 janv. 2008 à 14:04
merci de t'être penché sur mon problème.
Comment puis-je faire pour remplir mon panier? Avec mon code, pourquoi $panier est vide? Comment y remédier?
Cela vient-il de ma page index.php ?
sidf
Messages postés1216Date d'inscriptionmardi 20 décembre 2005StatutMembreDernière intervention18 octobre 20125 24 janv. 2008 à 14:18
je pense que le probleme, c'est que tu n'alimentes jamais le panier !
qui normalement devrait etre $_SESSION['panier']
je te conseille de ne conserver que le code article et la quantité dans le panier
(je suppose que tu as une table articles pour récupérer les autres infos)
suis pas un specialiste du panier, mais cherche plutot dans ce sens
la soumission de chaque formulaire devrait
1 - demarrer la session, récuperer $_SESSION['panier'] (le créér s'il, n'existe pas)
2 - ajouter les données à $_SESSION['panier']
3- Relire en boucle $_SESSION['panier'] pour afficher son contenu
En fait là, $_SESSION['panier'] est initialisée avec $panier... qui n'existe pas
tu ne fais qu'afficher les derniers $_POST
cs_jereln
Messages postés10Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention 1 octobre 2009 24 janv. 2008 à 14:38
je ne travaille pas à partir d'une base de données, je suis donc obligée de garder les autres infos.
Concernant le $_SESSION['panier'], je comprends au point de vue théorique comment il fonctionne, mais en pratique, je ne sais pas du tout comment faire :
au début de ma page index.php, j'ai le session_start();
je pense qu'il faut que je mette à la place une condition du style :
if($panier!=null){
$_SESSION['panier'] = $panier;
}
else session_start();
Mais, j'ai toujours le même soucis : un seul article.
Vous n’avez pas trouvé la réponse que vous recherchez ?
yoman64
Messages postés962Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 2 août 20101 24 janv. 2008 à 19:08
Salut,
Déja le session_start tu devrais le mettre dans des vrais tags php <?php ?> au lieu des short_tags.
Dans ton code tout serais probablement à refaire, de la façon d'on tu procède tu ne peut que stocker un item, ensuite tu ne l'enregistre même pas dans la session....
Une session c'est bêtement une (ou des) variables(s) qui reste en mémoire même après que le script ait finit de s'executer, ce qui permet de les récuperer dans une autre page. Donc $_SESSION['panier'] est simplement une variable.
Ensuite pour pouvoir stocker plusieurs items ton $_SESSION['panier'] doit être un array.
Des fois j'ai l'impression que certaine personne croit que la programmation c'est de la magie
J'ai refais une partie de ton code (un peu à la vite, c'est perfectible je l'avoue :))
cs_jereln
Messages postés10Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention 1 octobre 2009 24 janv. 2008 à 20:25
mille merci pour ta patience yoman64. C'est exactement ce que je voulais. J'ai compris d'où venais mon erreur. A force d'être dessus plusieurs heures par jour depuis quelques jours, je ne savais plus réléchir !!!